public class org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector
super_class: java.lang.Object
{
private final org.eclipse.jgit.internal.storage.dfs.DfsRepository repo;
descriptor: Lorg/eclipse/jgit/internal/storage/dfs/DfsRepository;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final org.eclipse.jgit.lib.RefDatabase refdb;
descriptor: Lorg/eclipse/jgit/lib/RefDatabase;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final org.eclipse.jgit.internal.storage.dfs.DfsObjDatabase objdb;
descriptor: Lorg/eclipse/jgit/internal/storage/dfs/DfsObjDatabase;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.util.List<org.eclipse.jgit.internal.storage.dfs.DfsPackDescription> newPackDesc;
descriptor: Ljava/util/List;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/List<Lorg/eclipse/jgit/internal/storage/dfs/DfsPackDescription;>;
private final java.util.List<org.eclipse.jgit.storage.pack.PackStatistics> newPackStats;
descriptor: Ljava/util/List;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/List<Lorg/eclipse/jgit/storage/pack/PackStatistics;>;
private final java.util.List<org.eclipse.jgit.lib.ObjectIdSet> newPackObj;
descriptor: Ljava/util/List;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/List<Lorg/eclipse/jgit/lib/ObjectIdSet;>;
private org.eclipse.jgit.internal.storage.dfs.DfsReader ctx;
descriptor: Lorg/eclipse/jgit/internal/storage/dfs/DfsReader;
flags: (0x0002) ACC_PRIVATE
private org.eclipse.jgit.storage.pack.PackConfig packConfig;
descriptor: Lorg/eclipse/jgit/storage/pack/PackConfig;
flags: (0x0002) ACC_PRIVATE
private org.eclipse.jgit.internal.storage.reftable.ReftableConfig reftableConfig;
descriptor: Lorg/eclipse/jgit/internal/storage/reftable/ReftableConfig;
flags: (0x0002) ACC_PRIVATE
private boolean convertToReftable;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private boolean includeDeletes;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private long reftableInitialMinUpdateIndex;
descriptor: J
flags: (0x0002) ACC_PRIVATE
private long reftableInitialMaxUpdateIndex;
descriptor: J
flags: (0x0002) ACC_PRIVATE
private long coalesceGarbageLimit;
descriptor: J
flags: (0x0002) ACC_PRIVATE
private long garbageTtlMillis;
descriptor: J
flags: (0x0002) ACC_PRIVATE
private long startTimeMillis;
descriptor: J
flags: (0x0002) ACC_PRIVATE
private java.util.List<org.eclipse.jgit.internal.storage.dfs.DfsPackFile> packsBefore;
descriptor: Ljava/util/List;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/List<Lorg/eclipse/jgit/internal/storage/dfs/DfsPackFile;>;
private java.util.List<org.eclipse.jgit.internal.storage.dfs.DfsReftable> reftablesBefore;
descriptor: Ljava/util/List;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/List<Lorg/eclipse/jgit/internal/storage/dfs/DfsReftable;>;
private java.util.List<org.eclipse.jgit.internal.storage.dfs.DfsPackFile> expiredGarbagePacks;
descriptor: Ljava/util/List;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/List<Lorg/eclipse/jgit/internal/storage/dfs/DfsPackFile;>;
private java.util.Collection<org.eclipse.jgit.lib.Ref> refsBefore;
descriptor: Ljava/util/Collection;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/Collection<Lorg/eclipse/jgit/lib/Ref;>;
private java.util.Set<org.eclipse.jgit.lib.ObjectId> allHeadsAndTags;
descriptor: Ljava/util/Set;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/Set<Lorg/eclipse/jgit/lib/ObjectId;>;
private java.util.Set<org.eclipse.jgit.lib.ObjectId> allTags;
descriptor: Ljava/util/Set;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/Set<Lorg/eclipse/jgit/lib/ObjectId;>;
private java.util.Set<org.eclipse.jgit.lib.ObjectId> nonHeads;
descriptor: Ljava/util/Set;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/Set<Lorg/eclipse/jgit/lib/ObjectId;>;
private java.util.Set<org.eclipse.jgit.lib.ObjectId> txnHeads;
descriptor: Ljava/util/Set;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/Set<Lorg/eclipse/jgit/lib/ObjectId;>;
private java.util.Set<org.eclipse.jgit.lib.ObjectId> tagTargets;
descriptor: Ljava/util/Set;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/Set<Lorg/eclipse/jgit/lib/ObjectId;>;
public void <init>(org.eclipse.jgit.internal.storage.dfs.DfsRepository);
descriptor: (Lorg/eclipse/jgit/internal/storage/dfs/DfsRepository;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
iconst_1
putfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.convertToReftable:Z
2: aload 0
lconst_1
putfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.reftableInitialMinUpdateIndex:J
3: aload 0
lconst_1
putfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.reftableInitialMaxUpdateIndex:J
4: aload 0
ldc 52428800
putfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.coalesceGarbageLimit:J
5: aload 0
getstatic java.util.concurrent.TimeUnit.DAYS:Ljava/util/concurrent/TimeUnit;
lconst_1
invokevirtual java.util.concurrent.TimeUnit.toMillis:(J)J
putfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.garbageTtlMillis:J
6: aload 0
aload 1
putfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.repo:Lorg/eclipse/jgit/internal/storage/dfs/DfsRepository;
7: aload 0
aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.repo:Lorg/eclipse/jgit/internal/storage/dfs/DfsRepository;
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsRepository.getRefDatabase:()Lorg/eclipse/jgit/lib/RefDatabase;
putfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.refdb:Lorg/eclipse/jgit/lib/RefDatabase;
8: aload 0
aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.repo:Lorg/eclipse/jgit/internal/storage/dfs/DfsRepository;
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsRepository.getObjectDatabase:()Lorg/eclipse/jgit/internal/storage/dfs/DfsObjDatabase;
putfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.objdb:Lorg/eclipse/jgit/internal/storage/dfs/DfsObjDatabase;
9: aload 0
new java.util.ArrayList
dup
iconst_4
invokespecial java.util.ArrayList.<init>:(I)V
putfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.newPackDesc:Ljava/util/List;
10: aload 0
new java.util.ArrayList
dup
iconst_4
invokespecial java.util.ArrayList.<init>:(I)V
putfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.newPackStats:Ljava/util/List;
11: aload 0
new java.util.ArrayList
dup
iconst_4
invokespecial java.util.ArrayList.<init>:(I)V
putfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.newPackObj:Ljava/util/List;
12: aload 0
new org.eclipse.jgit.storage.pack.PackConfig
dup
aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.repo:Lorg/eclipse/jgit/internal/storage/dfs/DfsRepository;
invokespecial org.eclipse.jgit.storage.pack.PackConfig.<init>:(Lorg/eclipse/jgit/lib/Repository;)V
putfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.packConfig:Lorg/eclipse/jgit/storage/pack/PackConfig;
13: aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.packConfig:Lorg/eclipse/jgit/storage/pack/PackConfig;
iconst_2
invokevirtual org.eclipse.jgit.storage.pack.PackConfig.setIndexVersion:(I)V
14: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Lorg/eclipse/jgit/internal/storage/dfs/DfsGarbageCollector;
0 15 1 repository Lorg/eclipse/jgit/internal/storage/dfs/DfsRepository;
MethodParameters:
Name Flags
repository
public org.eclipse.jgit.storage.pack.PackConfig getPackConfig();
descriptor: ()Lorg/eclipse/jgit/storage/pack/PackConfig;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.packConfig:Lorg/eclipse/jgit/storage/pack/PackConfig;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/eclipse/jgit/internal/storage/dfs/DfsGarbageCollector;
public org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector setPackConfig(org.eclipse.jgit.storage.pack.PackConfig);
descriptor: (Lorg/eclipse/jgit/storage/pack/PackConfig;)Lorg/eclipse/jgit/internal/storage/dfs/DfsGarbageCollector;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
putfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.packConfig:Lorg/eclipse/jgit/storage/pack/PackConfig;
1: aload 0
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/eclipse/jgit/internal/storage/dfs/DfsGarbageCollector;
0 2 1 newConfig Lorg/eclipse/jgit/storage/pack/PackConfig;
MethodParameters:
Name Flags
newConfig
public org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector setReftableConfig(org.eclipse.jgit.internal.storage.reftable.ReftableConfig);
descriptor: (Lorg/eclipse/jgit/internal/storage/reftable/ReftableConfig;)Lorg/eclipse/jgit/internal/storage/dfs/DfsGarbageCollector;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
putfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.reftableConfig:Lorg/eclipse/jgit/internal/storage/reftable/ReftableConfig;
1: aload 0
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/eclipse/jgit/internal/storage/dfs/DfsGarbageCollector;
0 2 1 cfg Lorg/eclipse/jgit/internal/storage/reftable/ReftableConfig;
MethodParameters:
Name Flags
cfg
public org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector setConvertToReftable(boolean);
descriptor: (Z)Lorg/eclipse/jgit/internal/storage/dfs/DfsGarbageCollector;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
putfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.convertToReftable:Z
1: aload 0
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/eclipse/jgit/internal/storage/dfs/DfsGarbageCollector;
0 2 1 convert Z
MethodParameters:
Name Flags
convert
public org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector setIncludeDeletes(boolean);
descriptor: (Z)Lorg/eclipse/jgit/internal/storage/dfs/DfsGarbageCollector;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
putfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.includeDeletes:Z
1: aload 0
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/eclipse/jgit/internal/storage/dfs/DfsGarbageCollector;
0 2 1 include Z
MethodParameters:
Name Flags
include
public org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector setReftableInitialMinUpdateIndex(long);
descriptor: (J)Lorg/eclipse/jgit/internal/storage/dfs/DfsGarbageCollector;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=2
start local 0 start local 1 0: aload 0
lload 1
lconst_0
invokestatic java.lang.Math.max:(JJ)J
putfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.reftableInitialMinUpdateIndex:J
1: aload 0
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/eclipse/jgit/internal/storage/dfs/DfsGarbageCollector;
0 2 1 u J
MethodParameters:
Name Flags
u
public org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector setReftableInitialMaxUpdateIndex(long);
descriptor: (J)Lorg/eclipse/jgit/internal/storage/dfs/DfsGarbageCollector;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=2
start local 0 start local 1 0: aload 0
lconst_0
lload 1
invokestatic java.lang.Math.max:(JJ)J
putfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.reftableInitialMaxUpdateIndex:J
1: aload 0
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/eclipse/jgit/internal/storage/dfs/DfsGarbageCollector;
0 2 1 u J
MethodParameters:
Name Flags
u
public long getCoalesceGarbageLimit();
descriptor: ()J
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.coalesceGarbageLimit:J
lreturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/eclipse/jgit/internal/storage/dfs/DfsGarbageCollector;
public org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector setCoalesceGarbageLimit(long);
descriptor: (J)Lorg/eclipse/jgit/internal/storage/dfs/DfsGarbageCollector;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 0
lload 1
putfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.coalesceGarbageLimit:J
1: aload 0
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/eclipse/jgit/internal/storage/dfs/DfsGarbageCollector;
0 2 1 limit J
MethodParameters:
Name Flags
limit
public long getGarbageTtlMillis();
descriptor: ()J
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.garbageTtlMillis:J
lreturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/eclipse/jgit/internal/storage/dfs/DfsGarbageCollector;
public org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector setGarbageTtl(long, java.util.concurrent.TimeUnit);
descriptor: (JLjava/util/concurrent/TimeUnit;)Lorg/eclipse/jgit/internal/storage/dfs/DfsGarbageCollector;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=3
start local 0 start local 1 start local 3 0: aload 0
aload 3
lload 1
invokevirtual java.util.concurrent.TimeUnit.toMillis:(J)J
putfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.garbageTtlMillis:J
1: aload 0
areturn
end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/eclipse/jgit/internal/storage/dfs/DfsGarbageCollector;
0 2 1 ttl J
0 2 3 unit Ljava/util/concurrent/TimeUnit;
MethodParameters:
Name Flags
ttl
unit
public boolean pack(org.eclipse.jgit.lib.ProgressMonitor);
descriptor: (Lorg/eclipse/jgit/lib/ProgressMonitor;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=6, args_size=2
start local 0 start local 1 0: aload 1
ifnonnull 2
1: getstatic org.eclipse.jgit.lib.NullProgressMonitor.INSTANCE:Lorg/eclipse/jgit/lib/NullProgressMonitor;
astore 1
2: StackMap locals:
StackMap stack:
aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.packConfig:Lorg/eclipse/jgit/storage/pack/PackConfig;
invokevirtual org.eclipse.jgit.storage.pack.PackConfig.getIndexVersion:()I
iconst_2
if_icmpeq 6
3: new java.lang.IllegalStateException
dup
4: invokestatic org.eclipse.jgit.internal.JGitText.get:()Lorg/eclipse/jgit/internal/JGitText;
getfield org.eclipse.jgit.internal.JGitText.supportOnlyPackIndexVersion2:Ljava/lang/String;
5: invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
6: StackMap locals:
StackMap stack:
aload 0
invokestatic org.eclipse.jgit.util.SystemReader.getInstance:()Lorg/eclipse/jgit/util/SystemReader;
invokevirtual org.eclipse.jgit.util.SystemReader.getCurrentTime:()J
putfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.startTimeMillis:J
7: aload 0
aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.objdb:Lorg/eclipse/jgit/internal/storage/dfs/DfsObjDatabase;
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsObjDatabase.newReader:()Lorg/eclipse/jgit/internal/storage/dfs/DfsReader;
putfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.ctx:Lorg/eclipse/jgit/internal/storage/dfs/DfsReader;
8: aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.refdb:Lorg/eclipse/jgit/lib/RefDatabase;
invokevirtual org.eclipse.jgit.lib.RefDatabase.refresh:()V
9: aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.objdb:Lorg/eclipse/jgit/internal/storage/dfs/DfsObjDatabase;
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsObjDatabase.clearCache:()V
10: aload 0
aload 0
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.getAllRefs:()Ljava/util/Collection;
putfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.refsBefore:Ljava/util/Collection;
11: aload 0
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.readPacksBefore:()V
12: aload 0
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.readReftablesBefore:()V
13: new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
astore 2
start local 2 14: aload 0
new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
putfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.allHeadsAndTags:Ljava/util/Set;
15: aload 0
new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
putfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.allTags:Ljava/util/Set;
16: aload 0
new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
putfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.nonHeads:Ljava/util/Set;
17: aload 0
new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
putfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.txnHeads:Ljava/util/Set;
18: aload 0
new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
putfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.tagTargets:Ljava/util/Set;
19: aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.refsBefore:Ljava/util/Collection;
invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
astore 4
goto 35
StackMap locals: org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector org.eclipse.jgit.lib.ProgressMonitor java.util.Set top java.util.Iterator
StackMap stack:
20: aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.eclipse.jgit.lib.Ref
astore 3
start local 3 21: aload 3
invokeinterface org.eclipse.jgit.lib.Ref.isSymbolic:()Z
ifne 35
aload 3
invokeinterface org.eclipse.jgit.lib.Ref.getObjectId:()Lorg/eclipse/jgit/lib/ObjectId;
ifnonnull 23
22: goto 35
23: StackMap locals: org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector org.eclipse.jgit.lib.ProgressMonitor java.util.Set org.eclipse.jgit.lib.Ref java.util.Iterator
StackMap stack:
aload 3
invokestatic org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.isHead:(Lorg/eclipse/jgit/lib/Ref;)Z
ifeq 26
24: aload 2
aload 3
invokeinterface org.eclipse.jgit.lib.Ref.getObjectId:()Lorg/eclipse/jgit/lib/ObjectId;
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
25: goto 33
StackMap locals:
StackMap stack:
26: aload 3
invokestatic org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.isTag:(Lorg/eclipse/jgit/lib/Ref;)Z
ifeq 29
27: aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.allTags:Ljava/util/Set;
aload 3
invokeinterface org.eclipse.jgit.lib.Ref.getObjectId:()Lorg/eclipse/jgit/lib/ObjectId;
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
28: goto 33
StackMap locals:
StackMap stack:
29: aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.refdb:Lorg/eclipse/jgit/lib/RefDatabase;
aload 3
invokeinterface org.eclipse.jgit.lib.Ref.getName:()Ljava/lang/String;
invokestatic org.eclipse.jgit.internal.storage.reftree.RefTreeNames.isRefTree:(Lorg/eclipse/jgit/lib/RefDatabase;Ljava/lang/String;)Z
ifeq 32
30: aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.txnHeads:Ljava/util/Set;
aload 3
invokeinterface org.eclipse.jgit.lib.Ref.getObjectId:()Lorg/eclipse/jgit/lib/ObjectId;
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
31: goto 33
32: StackMap locals:
StackMap stack:
aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.nonHeads:Ljava/util/Set;
aload 3
invokeinterface org.eclipse.jgit.lib.Ref.getObjectId:()Lorg/eclipse/jgit/lib/ObjectId;
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
33: StackMap locals:
StackMap stack:
aload 3
invokeinterface org.eclipse.jgit.lib.Ref.getPeeledObjectId:()Lorg/eclipse/jgit/lib/ObjectId;
ifnull 35
34: aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.tagTargets:Ljava/util/Set;
aload 3
invokeinterface org.eclipse.jgit.lib.Ref.getPeeledObjectId:()Lorg/eclipse/jgit/lib/ObjectId;
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
end local 3 35: StackMap locals: org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector org.eclipse.jgit.lib.ProgressMonitor java.util.Set top java.util.Iterator
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 20
36: aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.allTags:Ljava/util/Set;
aload 2
invokeinterface java.util.Set.removeAll:(Ljava/util/Collection;)Z
pop
37: aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.allHeadsAndTags:Ljava/util/Set;
aload 2
invokeinterface java.util.Set.addAll:(Ljava/util/Collection;)Z
pop
38: aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.allHeadsAndTags:Ljava/util/Set;
aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.allTags:Ljava/util/Set;
invokeinterface java.util.Set.addAll:(Ljava/util/Collection;)Z
pop
39: aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.tagTargets:Ljava/util/Set;
aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.allHeadsAndTags:Ljava/util/Set;
invokeinterface java.util.Set.addAll:(Ljava/util/Collection;)Z
pop
40: aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.packConfig:Lorg/eclipse/jgit/storage/pack/PackConfig;
invokevirtual org.eclipse.jgit.storage.pack.PackConfig.getSinglePack:()Z
ifeq 43
41: aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.allHeadsAndTags:Ljava/util/Set;
aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.nonHeads:Ljava/util/Set;
invokeinterface java.util.Set.addAll:(Ljava/util/Collection;)Z
pop
42: aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.nonHeads:Ljava/util/Set;
invokeinterface java.util.Set.clear:()V
43: StackMap locals: org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector org.eclipse.jgit.lib.ProgressMonitor java.util.Set
StackMap stack:
iconst_1
istore 3
start local 3 44: aload 0
aload 1
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.packHeads:(Lorg/eclipse/jgit/lib/ProgressMonitor;)V
45: aload 0
aload 1
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.packRest:(Lorg/eclipse/jgit/lib/ProgressMonitor;)V
46: aload 0
aload 1
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.packRefTreeGraph:(Lorg/eclipse/jgit/lib/ProgressMonitor;)V
47: aload 0
aload 1
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.packGarbage:(Lorg/eclipse/jgit/lib/ProgressMonitor;)V
48: aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.objdb:Lorg/eclipse/jgit/internal/storage/dfs/DfsObjDatabase;
aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.newPackDesc:Ljava/util/List;
aload 0
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.toPrune:()Ljava/util/Set;
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsObjDatabase.commitPack:(Ljava/util/Collection;Ljava/util/Collection;)V
49: iconst_0
istore 3
50: iload 3
ifeq 52
51: aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.objdb:Lorg/eclipse/jgit/internal/storage/dfs/DfsObjDatabase;
aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.newPackDesc:Ljava/util/List;
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsObjDatabase.rollbackPack:(Ljava/util/Collection;)V
52: StackMap locals: int
StackMap stack:
aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.ctx:Lorg/eclipse/jgit/internal/storage/dfs/DfsReader;
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsReader.close:()V
53: iconst_1
ireturn
54: StackMap locals:
StackMap stack: java.lang.Throwable
astore 4
55: iload 3
ifeq 57
56: aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.objdb:Lorg/eclipse/jgit/internal/storage/dfs/DfsObjDatabase;
aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.newPackDesc:Ljava/util/List;
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsObjDatabase.rollbackPack:(Ljava/util/Collection;)V
57: StackMap locals: java.lang.Throwable
StackMap stack:
aload 4
athrow
end local 3 end local 2 58: StackMap locals: org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector org.eclipse.jgit.lib.ProgressMonitor
StackMap stack: java.lang.Throwable
astore 5
59: aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.ctx:Lorg/eclipse/jgit/internal/storage/dfs/DfsReader;
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsReader.close:()V
60: aload 5
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 61 0 this Lorg/eclipse/jgit/internal/storage/dfs/DfsGarbageCollector;
0 61 1 pm Lorg/eclipse/jgit/lib/ProgressMonitor;
14 58 2 allHeads Ljava/util/Set<Lorg/eclipse/jgit/lib/ObjectId;>;
21 35 3 ref Lorg/eclipse/jgit/lib/Ref;
44 58 3 rollback Z
Exception table:
from to target type
44 50 54 any
8 52 58 any
54 58 58 any
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
pm
private java.util.Collection<org.eclipse.jgit.lib.Ref> getAllRefs();
descriptor: ()Ljava/util/Collection;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=6, args_size=1
start local 0 0: aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.refdb:Lorg/eclipse/jgit/lib/RefDatabase;
invokevirtual org.eclipse.jgit.lib.RefDatabase.getRefs:()Ljava/util/List;
astore 1
start local 1 1: aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.refdb:Lorg/eclipse/jgit/lib/RefDatabase;
invokevirtual org.eclipse.jgit.lib.RefDatabase.getAdditionalRefs:()Ljava/util/List;
astore 2
start local 2 2: aload 2
invokeinterface java.util.List.isEmpty:()Z
ifne 11
3: new java.util.ArrayList
dup
aload 1
invokeinterface java.util.Collection.size:()I
aload 2
invokeinterface java.util.List.size:()I
iadd
invokespecial java.util.ArrayList.<init>:(I)V
astore 3
start local 3 4: aload 3
aload 1
invokeinterface java.util.List.addAll:(Ljava/util/Collection;)Z
pop
5: aload 2
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 5
goto 9
StackMap locals: org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector java.util.Collection java.util.List java.util.List top java.util.Iterator
StackMap stack:
6: aload 5
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.eclipse.jgit.lib.Ref
astore 4
start local 4 7: aload 4
invokeinterface org.eclipse.jgit.lib.Ref.getName:()Ljava/lang/String;
ldc "refs/"
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 9
8: aload 3
aload 4
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
end local 4 9: StackMap locals:
StackMap stack:
aload 5
invokeinterface java.util.Iterator.hasNext:()Z
ifne 6
10: aload 3
areturn
end local 3 11: StackMap locals: org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector java.util.Collection java.util.List
StackMap stack:
aload 1
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lorg/eclipse/jgit/internal/storage/dfs/DfsGarbageCollector;
1 12 1 refs Ljava/util/Collection<Lorg/eclipse/jgit/lib/Ref;>;
2 12 2 addl Ljava/util/List<Lorg/eclipse/jgit/lib/Ref;>;
4 11 3 all Ljava/util/List<Lorg/eclipse/jgit/lib/Ref;>;
7 9 4 r Lorg/eclipse/jgit/lib/Ref;
Exceptions:
throws java.io.IOException
Signature: ()Ljava/util/Collection<Lorg/eclipse/jgit/lib/Ref;>;
private void readPacksBefore();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=9, args_size=1
start local 0 0: aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.objdb:Lorg/eclipse/jgit/internal/storage/dfs/DfsObjDatabase;
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsObjDatabase.getPacks:()[Lorg/eclipse/jgit/internal/storage/dfs/DfsPackFile;
astore 1
start local 1 1: aload 0
new java.util.ArrayList
dup
aload 1
arraylength
invokespecial java.util.ArrayList.<init>:(I)V
putfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.packsBefore:Ljava/util/List;
2: aload 0
new java.util.ArrayList
dup
aload 1
arraylength
invokespecial java.util.ArrayList.<init>:(I)V
putfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.expiredGarbagePacks:Ljava/util/List;
3: invokestatic org.eclipse.jgit.util.SystemReader.getInstance:()Lorg/eclipse/jgit/util/SystemReader;
invokevirtual org.eclipse.jgit.util.SystemReader.getCurrentTime:()J
lstore 2
start local 2 4: aload 1
dup
astore 7
arraylength
istore 6
iconst_0
istore 5
goto 16
StackMap locals: org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector org.eclipse.jgit.internal.storage.dfs.DfsPackFile[] long top int int org.eclipse.jgit.internal.storage.dfs.DfsPackFile[]
StackMap stack:
5: aload 7
iload 5
aaload
astore 4
start local 4 6: aload 4
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsPackFile.getPackDescription:()Lorg/eclipse/jgit/internal/storage/dfs/DfsPackDescription;
astore 8
start local 8 7: aload 8
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsPackDescription.getPackSource:()Lorg/eclipse/jgit/internal/storage/dfs/DfsObjDatabase$PackSource;
getstatic org.eclipse.jgit.internal.storage.dfs.DfsObjDatabase$PackSource.UNREACHABLE_GARBAGE:Lorg/eclipse/jgit/internal/storage/dfs/DfsObjDatabase$PackSource;
if_acmpeq 10
8: aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.packsBefore:Ljava/util/List;
aload 4
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
9: goto 15
StackMap locals: org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector org.eclipse.jgit.internal.storage.dfs.DfsPackFile[] long org.eclipse.jgit.internal.storage.dfs.DfsPackFile int int org.eclipse.jgit.internal.storage.dfs.DfsPackFile[] org.eclipse.jgit.internal.storage.dfs.DfsPackDescription
StackMap stack:
10: aload 0
aload 8
lload 2
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.packIsExpiredGarbage:(Lorg/eclipse/jgit/internal/storage/dfs/DfsPackDescription;J)Z
ifeq 13
11: aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.expiredGarbagePacks:Ljava/util/List;
aload 4
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
12: goto 15
StackMap locals:
StackMap stack:
13: aload 0
aload 8
lload 2
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.packIsCoalesceableGarbage:(Lorg/eclipse/jgit/internal/storage/dfs/DfsPackDescription;J)Z
ifeq 15
14: aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.packsBefore:Ljava/util/List;
aload 4
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
end local 8 end local 4 15: StackMap locals: org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector org.eclipse.jgit.internal.storage.dfs.DfsPackFile[] long top int int org.eclipse.jgit.internal.storage.dfs.DfsPackFile[]
StackMap stack:
iinc 5 1
StackMap locals:
StackMap stack:
16: iload 5
iload 6
if_icmplt 5
17: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 18 0 this Lorg/eclipse/jgit/internal/storage/dfs/DfsGarbageCollector;
1 18 1 packs [Lorg/eclipse/jgit/internal/storage/dfs/DfsPackFile;
4 18 2 now J
6 15 4 p Lorg/eclipse/jgit/internal/storage/dfs/DfsPackFile;
7 15 8 d Lorg/eclipse/jgit/internal/storage/dfs/DfsPackDescription;
Exceptions:
throws java.io.IOException
private void readReftablesBefore();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=2, args_size=1
start local 0 0: aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.objdb:Lorg/eclipse/jgit/internal/storage/dfs/DfsObjDatabase;
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsObjDatabase.getReftables:()[Lorg/eclipse/jgit/internal/storage/dfs/DfsReftable;
astore 1
start local 1 1: aload 0
new java.util.ArrayList
dup
aload 1
invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
putfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.reftablesBefore:Ljava/util/List;
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/eclipse/jgit/internal/storage/dfs/DfsGarbageCollector;
1 3 1 tables [Lorg/eclipse/jgit/internal/storage/dfs/DfsReftable;
Exceptions:
throws java.io.IOException
private boolean packIsExpiredGarbage(org.eclipse.jgit.internal.storage.dfs.DfsPackDescription, long);
descriptor: (Lorg/eclipse/jgit/internal/storage/dfs/DfsPackDescription;J)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsPackDescription.getPackSource:()Lorg/eclipse/jgit/internal/storage/dfs/DfsObjDatabase$PackSource;
getstatic org.eclipse.jgit.internal.storage.dfs.DfsObjDatabase$PackSource.UNREACHABLE_GARBAGE:Lorg/eclipse/jgit/internal/storage/dfs/DfsObjDatabase$PackSource;
if_acmpne 4
1: aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.garbageTtlMillis:J
lconst_0
lcmp
ifle 4
2: lload 2
aload 1
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsPackDescription.getLastModified:()J
lsub
aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.garbageTtlMillis:J
3: lcmp
iflt 4
iconst_1
ireturn
StackMap locals:
StackMap stack:
4: iconst_0
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/eclipse/jgit/internal/storage/dfs/DfsGarbageCollector;
0 5 1 d Lorg/eclipse/jgit/internal/storage/dfs/DfsPackDescription;
0 5 2 now J
MethodParameters:
Name Flags
d
now
private boolean packIsCoalesceableGarbage(org.eclipse.jgit.internal.storage.dfs.DfsPackDescription, long);
descriptor: (Lorg/eclipse/jgit/internal/storage/dfs/DfsPackDescription;J)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=16, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsPackDescription.getPackSource:()Lorg/eclipse/jgit/internal/storage/dfs/DfsObjDatabase$PackSource;
getstatic org.eclipse.jgit.internal.storage.dfs.DfsObjDatabase$PackSource.UNREACHABLE_GARBAGE:Lorg/eclipse/jgit/internal/storage/dfs/DfsObjDatabase$PackSource;
if_acmpne 2
1: aload 1
getstatic org.eclipse.jgit.internal.storage.pack.PackExt.PACK:Lorg/eclipse/jgit/internal/storage/pack/PackExt;
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsPackDescription.getFileSize:(Lorg/eclipse/jgit/internal/storage/pack/PackExt;)J
aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.coalesceGarbageLimit:J
lcmp
iflt 3
2: StackMap locals:
StackMap stack:
iconst_0
ireturn
3: StackMap locals:
StackMap stack:
aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.garbageTtlMillis:J
lconst_0
lcmp
ifne 5
4: iconst_1
ireturn
5: StackMap locals:
StackMap stack:
aload 1
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsPackDescription.getLastModified:()J
lstore 4
start local 4 6: lload 4
invokestatic org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.dayStartInMillis:(J)J
lstore 6
start local 6 7: lload 2
invokestatic org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.dayStartInMillis:(J)J
lstore 8
start local 8 8: lload 6
lload 8
lcmp
ifeq 10
9: iconst_0
ireturn
10: StackMap locals: long long long
StackMap stack:
aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.garbageTtlMillis:J
getstatic java.util.concurrent.TimeUnit.DAYS:Ljava/util/concurrent/TimeUnit;
lconst_1
invokevirtual java.util.concurrent.TimeUnit.toMillis:(J)J
lcmp
ifle 12
11: iconst_1
ireturn
12: StackMap locals:
StackMap stack:
aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.garbageTtlMillis:J
ldc 3
ldiv
lstore 10
start local 10 13: lload 10
lconst_0
lcmp
ifne 15
14: iconst_0
ireturn
15: StackMap locals: long
StackMap stack:
lload 4
lload 6
lsub
lload 10
ldiv
lstore 12
start local 12 16: lload 2
lload 8
lsub
lload 10
ldiv
lstore 14
start local 14 17: lload 12
lload 14
lcmp
ifne 18
iconst_1
ireturn
StackMap locals: long long
StackMap stack:
18: iconst_0
ireturn
end local 14 end local 12 end local 10 end local 8 end local 6 end local 4 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 19 0 this Lorg/eclipse/jgit/internal/storage/dfs/DfsGarbageCollector;
0 19 1 d Lorg/eclipse/jgit/internal/storage/dfs/DfsPackDescription;
0 19 2 now J
6 19 4 lastModified J
7 19 6 dayStartLastModified J
8 19 8 dayStartToday J
13 19 10 timeInterval J
16 19 12 modifiedTimeSlot J
17 19 14 presentTimeSlot J
MethodParameters:
Name Flags
d
now
private static long dayStartInMillis(long);
descriptor: (J)J
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=3, args_size=1
start local 0 0: new java.util.GregorianCalendar
dup
1: invokestatic org.eclipse.jgit.util.SystemReader.getInstance:()Lorg/eclipse/jgit/util/SystemReader;
invokevirtual org.eclipse.jgit.util.SystemReader.getTimeZone:()Ljava/util/TimeZone;
2: invokespecial java.util.GregorianCalendar.<init>:(Ljava/util/TimeZone;)V
astore 2
start local 2 3: aload 2
lload 0
invokevirtual java.util.Calendar.setTimeInMillis:(J)V
4: aload 2
bipush 11
iconst_0
invokevirtual java.util.Calendar.set:(II)V
5: aload 2
bipush 12
iconst_0
invokevirtual java.util.Calendar.set:(II)V
6: aload 2
bipush 13
iconst_0
invokevirtual java.util.Calendar.set:(II)V
7: aload 2
bipush 14
iconst_0
invokevirtual java.util.Calendar.set:(II)V
8: aload 2
invokevirtual java.util.Calendar.getTimeInMillis:()J
lreturn
end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 timeInMillis J
3 9 2 cal Ljava/util/Calendar;
MethodParameters:
Name Flags
timeInMillis
public java.util.Set<org.eclipse.jgit.internal.storage.dfs.DfsPackDescription> getSourcePacks();
descriptor: ()Ljava/util/Set;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.toPrune:()Ljava/util/Set;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/eclipse/jgit/internal/storage/dfs/DfsGarbageCollector;
Signature: ()Ljava/util/Set<Lorg/eclipse/jgit/internal/storage/dfs/DfsPackDescription;>;
public java.util.List<org.eclipse.jgit.internal.storage.dfs.DfsPackDescription> getNewPacks();
descriptor: ()Ljava/util/List;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.newPackDesc:Ljava/util/List;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/eclipse/jgit/internal/storage/dfs/DfsGarbageCollector;
Signature: ()Ljava/util/List<Lorg/eclipse/jgit/internal/storage/dfs/DfsPackDescription;>;
public java.util.List<org.eclipse.jgit.storage.pack.PackStatistics> getNewPackStatistics();
descriptor: ()Ljava/util/List;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.newPackStats:Ljava/util/List;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/eclipse/jgit/internal/storage/dfs/DfsGarbageCollector;
Signature: ()Ljava/util/List<Lorg/eclipse/jgit/storage/pack/PackStatistics;>;
private java.util.Set<org.eclipse.jgit.internal.storage.dfs.DfsPackDescription> toPrune();
descriptor: ()Ljava/util/Set;
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=4, args_size=1
start local 0 0: new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
astore 1
start local 1 1: aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.packsBefore:Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 3
goto 4
StackMap locals: org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector java.util.Set top java.util.Iterator
StackMap stack:
2: aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.eclipse.jgit.internal.storage.dfs.DfsPackFile
astore 2
start local 2 3: aload 1
aload 2
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsPackFile.getPackDescription:()Lorg/eclipse/jgit/internal/storage/dfs/DfsPackDescription;
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
end local 2 4: StackMap locals:
StackMap stack:
aload 3
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
5: aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.reftableConfig:Lorg/eclipse/jgit/internal/storage/reftable/ReftableConfig;
ifnull 10
6: aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.reftablesBefore:Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 3
goto 9
StackMap locals:
StackMap stack:
7: aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.eclipse.jgit.internal.storage.dfs.DfsReftable
astore 2
start local 2 8: aload 1
aload 2
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsReftable.getPackDescription:()Lorg/eclipse/jgit/internal/storage/dfs/DfsPackDescription;
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
end local 2 9: StackMap locals:
StackMap stack:
aload 3
invokeinterface java.util.Iterator.hasNext:()Z
ifne 7
10: StackMap locals: org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector java.util.Set
StackMap stack:
aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.expiredGarbagePacks:Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 3
goto 13
StackMap locals: org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector java.util.Set top java.util.Iterator
StackMap stack:
11: aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.eclipse.jgit.internal.storage.dfs.DfsPackFile
astore 2
start local 2 12: aload 1
aload 2
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsPackFile.getPackDescription:()Lorg/eclipse/jgit/internal/storage/dfs/DfsPackDescription;
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
end local 2 13: StackMap locals:
StackMap stack:
aload 3
invokeinterface java.util.Iterator.hasNext:()Z
ifne 11
14: aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Lorg/eclipse/jgit/internal/storage/dfs/DfsGarbageCollector;
1 15 1 toPrune Ljava/util/Set<Lorg/eclipse/jgit/internal/storage/dfs/DfsPackDescription;>;
3 4 2 pack Lorg/eclipse/jgit/internal/storage/dfs/DfsPackFile;
8 9 2 table Lorg/eclipse/jgit/internal/storage/dfs/DfsReftable;
12 13 2 pack Lorg/eclipse/jgit/internal/storage/dfs/DfsPackFile;
Signature: ()Ljava/util/Set<Lorg/eclipse/jgit/internal/storage/dfs/DfsPackDescription;>;
private void packHeads(org.eclipse.jgit.lib.ProgressMonitor);
descriptor: (Lorg/eclipse/jgit/lib/ProgressMonitor;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=7, args_size=2
start local 0 start local 1 0: aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.allHeadsAndTags:Ljava/util/Set;
invokeinterface java.util.Set.isEmpty:()Z
ifeq 3
1: aload 0
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.writeReftable:()V
2: return
3: StackMap locals:
StackMap stack:
aconst_null
astore 2
aconst_null
astore 3
4: aload 0
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.newPackWriter:()Lorg/eclipse/jgit/internal/storage/pack/PackWriter;
astore 4
start local 4 5: aload 4
aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.tagTargets:Ljava/util/Set;
invokevirtual org.eclipse.jgit.internal.storage.pack.PackWriter.setTagTargets:(Ljava/util/Set;)V
6: aload 4
aload 1
aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.allHeadsAndTags:Ljava/util/Set;
getstatic org.eclipse.jgit.internal.storage.pack.PackWriter.NONE:Ljava/util/Set;
getstatic org.eclipse.jgit.internal.storage.pack.PackWriter.NONE:Ljava/util/Set;
aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.allTags:Ljava/util/Set;
invokevirtual org.eclipse.jgit.internal.storage.pack.PackWriter.preparePack:(Lorg/eclipse/jgit/lib/ProgressMonitor;Ljava/util/Set;Ljava/util/Set;Ljava/util/Set;Ljava/util/Set;)V
7: lconst_0
aload 4
invokevirtual org.eclipse.jgit.internal.storage.pack.PackWriter.getObjectCount:()J
lcmp
ifge 11
8: aload 0
getstatic org.eclipse.jgit.internal.storage.dfs.DfsObjDatabase$PackSource.INSERT:Lorg/eclipse/jgit/internal/storage/dfs/DfsObjDatabase$PackSource;
iconst_3
anewarray org.eclipse.jgit.internal.storage.dfs.DfsObjDatabase$PackSource
dup
iconst_0
getstatic org.eclipse.jgit.internal.storage.dfs.DfsObjDatabase$PackSource.RECEIVE:Lorg/eclipse/jgit/internal/storage/dfs/DfsObjDatabase$PackSource;
aastore
dup
iconst_1
getstatic org.eclipse.jgit.internal.storage.dfs.DfsObjDatabase$PackSource.COMPACT:Lorg/eclipse/jgit/internal/storage/dfs/DfsObjDatabase$PackSource;
aastore
dup
iconst_2
getstatic org.eclipse.jgit.internal.storage.dfs.DfsObjDatabase$PackSource.GC:Lorg/eclipse/jgit/internal/storage/dfs/DfsObjDatabase$PackSource;
aastore
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.estimateGcPackSize:(Lorg/eclipse/jgit/internal/storage/dfs/DfsObjDatabase$PackSource;[Lorg/eclipse/jgit/internal/storage/dfs/DfsObjDatabase$PackSource;)J
lstore 5
start local 5 9: aload 0
getstatic org.eclipse.jgit.internal.storage.dfs.DfsObjDatabase$PackSource.GC:Lorg/eclipse/jgit/internal/storage/dfs/DfsObjDatabase$PackSource;
aload 4
aload 1
lload 5
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.writePack:(Lorg/eclipse/jgit/internal/storage/dfs/DfsObjDatabase$PackSource;Lorg/eclipse/jgit/internal/storage/pack/PackWriter;Lorg/eclipse/jgit/lib/ProgressMonitor;J)Lorg/eclipse/jgit/internal/storage/dfs/DfsPackDescription;
pop
end local 5 10: goto 12
11: StackMap locals: java.lang.Throwable java.lang.Throwable org.eclipse.jgit.internal.storage.pack.PackWriter
StackMap stack:
aload 0
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.writeReftable:()V
12: StackMap locals:
StackMap stack:
aload 4
ifnull 18
aload 4
invokevirtual org.eclipse.jgit.internal.storage.pack.PackWriter.close:()V
goto 18
StackMap locals:
StackMap stack: java.lang.Throwable
13: astore 2
aload 4
ifnull 14
aload 4
invokevirtual org.eclipse.jgit.internal.storage.pack.PackWriter.close:()V
end local 4 StackMap locals:
StackMap stack:
14: aload 2
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
15: astore 3
aload 2
ifnonnull 16
aload 3
astore 2
goto 17
StackMap locals:
StackMap stack:
16: aload 2
aload 3
if_acmpeq 17
aload 2
aload 3
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
17: aload 2
athrow
18: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 19 0 this Lorg/eclipse/jgit/internal/storage/dfs/DfsGarbageCollector;
0 19 1 pm Lorg/eclipse/jgit/lib/ProgressMonitor;
5 14 4 pw Lorg/eclipse/jgit/internal/storage/pack/PackWriter;
9 10 5 estSize J
Exception table:
from to target type
5 12 13 any
4 15 15 any
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
pm
private void packRest(org.eclipse.jgit.lib.ProgressMonitor);
descriptor: (Lorg/eclipse/jgit/lib/ProgressMonitor;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=10, locals=7, args_size=2
start local 0 start local 1 0: aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.nonHeads:Ljava/util/Set;
invokeinterface java.util.Set.isEmpty:()Z
ifeq 2
1: return
2: StackMap locals:
StackMap stack:
aconst_null
astore 2
aconst_null
astore 3
3: aload 0
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.newPackWriter:()Lorg/eclipse/jgit/internal/storage/pack/PackWriter;
astore 4
start local 4 4: aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.newPackObj:Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 6
goto 7
StackMap locals: org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector org.eclipse.jgit.lib.ProgressMonitor java.lang.Throwable java.lang.Throwable org.eclipse.jgit.internal.storage.pack.PackWriter top java.util.Iterator
StackMap stack:
5: aload 6
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.eclipse.jgit.lib.ObjectIdSet
astore 5
start local 5 6: aload 4
aload 5
invokevirtual org.eclipse.jgit.internal.storage.pack.PackWriter.excludeObjects:(Lorg/eclipse/jgit/lib/ObjectIdSet;)V
end local 5 7: StackMap locals:
StackMap stack:
aload 6
invokeinterface java.util.Iterator.hasNext:()Z
ifne 5
8: aload 4
aload 1
aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.nonHeads:Ljava/util/Set;
aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.allHeadsAndTags:Ljava/util/Set;
invokevirtual org.eclipse.jgit.internal.storage.pack.PackWriter.preparePack:(Lorg/eclipse/jgit/lib/ProgressMonitor;Ljava/util/Set;Ljava/util/Set;)V
9: lconst_0
aload 4
invokevirtual org.eclipse.jgit.internal.storage.pack.PackWriter.getObjectCount:()J
lcmp
ifge 13
10: aload 0
getstatic org.eclipse.jgit.internal.storage.dfs.DfsObjDatabase$PackSource.GC_REST:Lorg/eclipse/jgit/internal/storage/dfs/DfsObjDatabase$PackSource;
aload 4
aload 1
11: aload 0
getstatic org.eclipse.jgit.internal.storage.dfs.DfsObjDatabase$PackSource.INSERT:Lorg/eclipse/jgit/internal/storage/dfs/DfsObjDatabase$PackSource;
iconst_3
anewarray org.eclipse.jgit.internal.storage.dfs.DfsObjDatabase$PackSource
dup
iconst_0
getstatic org.eclipse.jgit.internal.storage.dfs.DfsObjDatabase$PackSource.RECEIVE:Lorg/eclipse/jgit/internal/storage/dfs/DfsObjDatabase$PackSource;
aastore
dup
iconst_1
getstatic org.eclipse.jgit.internal.storage.dfs.DfsObjDatabase$PackSource.COMPACT:Lorg/eclipse/jgit/internal/storage/dfs/DfsObjDatabase$PackSource;
aastore
dup
iconst_2
getstatic org.eclipse.jgit.internal.storage.dfs.DfsObjDatabase$PackSource.GC_REST:Lorg/eclipse/jgit/internal/storage/dfs/DfsObjDatabase$PackSource;
aastore
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.estimateGcPackSize:(Lorg/eclipse/jgit/internal/storage/dfs/DfsObjDatabase$PackSource;[Lorg/eclipse/jgit/internal/storage/dfs/DfsObjDatabase$PackSource;)J
12: invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.writePack:(Lorg/eclipse/jgit/internal/storage/dfs/DfsObjDatabase$PackSource;Lorg/eclipse/jgit/internal/storage/pack/PackWriter;Lorg/eclipse/jgit/lib/ProgressMonitor;J)Lorg/eclipse/jgit/internal/storage/dfs/DfsPackDescription;
pop
13: StackMap locals: org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector org.eclipse.jgit.lib.ProgressMonitor java.lang.Throwable java.lang.Throwable org.eclipse.jgit.internal.storage.pack.PackWriter
StackMap stack:
aload 4
ifnull 19
aload 4
invokevirtual org.eclipse.jgit.internal.storage.pack.PackWriter.close:()V
goto 19
StackMap locals:
StackMap stack: java.lang.Throwable
14: astore 2
aload 4
ifnull 15
aload 4
invokevirtual org.eclipse.jgit.internal.storage.pack.PackWriter.close:()V
end local 4 StackMap locals:
StackMap stack:
15: aload 2
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
16: astore 3
aload 2
ifnonnull 17
aload 3
astore 2
goto 18
StackMap locals:
StackMap stack:
17: aload 2
aload 3
if_acmpeq 18
aload 2
aload 3
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
18: aload 2
athrow
19: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 20 0 this Lorg/eclipse/jgit/internal/storage/dfs/DfsGarbageCollector;
0 20 1 pm Lorg/eclipse/jgit/lib/ProgressMonitor;
4 15 4 pw Lorg/eclipse/jgit/internal/storage/pack/PackWriter;
6 7 5 packedObjs Lorg/eclipse/jgit/lib/ObjectIdSet;
Exception table:
from to target type
4 13 14 any
3 16 16 any
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
pm
private void packRefTreeGraph(org.eclipse.jgit.lib.ProgressMonitor);
descriptor: (Lorg/eclipse/jgit/lib/ProgressMonitor;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=7, args_size=2
start local 0 start local 1 0: aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.txnHeads:Ljava/util/Set;
invokeinterface java.util.Set.isEmpty:()Z
ifeq 2
1: return
2: StackMap locals:
StackMap stack:
aconst_null
astore 2
aconst_null
astore 3
3: aload 0
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.newPackWriter:()Lorg/eclipse/jgit/internal/storage/pack/PackWriter;
astore 4
start local 4 4: aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.newPackObj:Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 6
goto 7
StackMap locals: org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector org.eclipse.jgit.lib.ProgressMonitor java.lang.Throwable java.lang.Throwable org.eclipse.jgit.internal.storage.pack.PackWriter top java.util.Iterator
StackMap stack:
5: aload 6
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.eclipse.jgit.lib.ObjectIdSet
astore 5
start local 5 6: aload 4
aload 5
invokevirtual org.eclipse.jgit.internal.storage.pack.PackWriter.excludeObjects:(Lorg/eclipse/jgit/lib/ObjectIdSet;)V
end local 5 7: StackMap locals:
StackMap stack:
aload 6
invokeinterface java.util.Iterator.hasNext:()Z
ifne 5
8: aload 4
aload 1
aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.txnHeads:Ljava/util/Set;
getstatic org.eclipse.jgit.internal.storage.pack.PackWriter.NONE:Ljava/util/Set;
invokevirtual org.eclipse.jgit.internal.storage.pack.PackWriter.preparePack:(Lorg/eclipse/jgit/lib/ProgressMonitor;Ljava/util/Set;Ljava/util/Set;)V
9: lconst_0
aload 4
invokevirtual org.eclipse.jgit.internal.storage.pack.PackWriter.getObjectCount:()J
lcmp
ifge 11
10: aload 0
getstatic org.eclipse.jgit.internal.storage.dfs.DfsObjDatabase$PackSource.GC_TXN:Lorg/eclipse/jgit/internal/storage/dfs/DfsObjDatabase$PackSource;
aload 4
aload 1
lconst_0
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.writePack:(Lorg/eclipse/jgit/internal/storage/dfs/DfsObjDatabase$PackSource;Lorg/eclipse/jgit/internal/storage/pack/PackWriter;Lorg/eclipse/jgit/lib/ProgressMonitor;J)Lorg/eclipse/jgit/internal/storage/dfs/DfsPackDescription;
pop
11: StackMap locals: org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector org.eclipse.jgit.lib.ProgressMonitor java.lang.Throwable java.lang.Throwable org.eclipse.jgit.internal.storage.pack.PackWriter
StackMap stack:
aload 4
ifnull 17
aload 4
invokevirtual org.eclipse.jgit.internal.storage.pack.PackWriter.close:()V
goto 17
StackMap locals:
StackMap stack: java.lang.Throwable
12: astore 2
aload 4
ifnull 13
aload 4
invokevirtual org.eclipse.jgit.internal.storage.pack.PackWriter.close:()V
end local 4 StackMap locals:
StackMap stack:
13: aload 2
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
14: astore 3
aload 2
ifnonnull 15
aload 3
astore 2
goto 16
StackMap locals:
StackMap stack:
15: aload 2
aload 3
if_acmpeq 16
aload 2
aload 3
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
16: aload 2
athrow
17: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 18 0 this Lorg/eclipse/jgit/internal/storage/dfs/DfsGarbageCollector;
0 18 1 pm Lorg/eclipse/jgit/lib/ProgressMonitor;
4 13 4 pw Lorg/eclipse/jgit/internal/storage/pack/PackWriter;
6 7 5 packedObjs Lorg/eclipse/jgit/lib/ObjectIdSet;
Exception table:
from to target type
4 11 12 any
3 14 14 any
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
pm
private void packGarbage(org.eclipse.jgit.lib.ProgressMonitor);
descriptor: (Lorg/eclipse/jgit/lib/ProgressMonitor;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=23, args_size=2
start local 0 start local 1 0: new org.eclipse.jgit.storage.pack.PackConfig
dup
aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.packConfig:Lorg/eclipse/jgit/storage/pack/PackConfig;
invokespecial org.eclipse.jgit.storage.pack.PackConfig.<init>:(Lorg/eclipse/jgit/storage/pack/PackConfig;)V
astore 2
start local 2 1: aload 2
iconst_1
invokevirtual org.eclipse.jgit.storage.pack.PackConfig.setReuseDeltas:(Z)V
2: aload 2
iconst_1
invokevirtual org.eclipse.jgit.storage.pack.PackConfig.setReuseObjects:(Z)V
3: aload 2
iconst_0
invokevirtual org.eclipse.jgit.storage.pack.PackConfig.setDeltaCompress:(Z)V
4: aload 2
iconst_0
invokevirtual org.eclipse.jgit.storage.pack.PackConfig.setBuildBitmaps:(Z)V
5: aconst_null
astore 3
aconst_null
astore 4
6: new org.eclipse.jgit.internal.storage.pack.PackWriter
dup
aload 2
aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.ctx:Lorg/eclipse/jgit/internal/storage/dfs/DfsReader;
invokespecial org.eclipse.jgit.internal.storage.pack.PackWriter.<init>:(Lorg/eclipse/jgit/storage/pack/PackConfig;Lorg/eclipse/jgit/lib/ObjectReader;)V
astore 5
start local 5 7: new org.eclipse.jgit.revwalk.RevWalk
dup
aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.ctx:Lorg/eclipse/jgit/internal/storage/dfs/DfsReader;
invokespecial org.eclipse.jgit.revwalk.RevWalk.<init>:(Lorg/eclipse/jgit/lib/ObjectReader;)V
astore 6
start local 6 8: aload 5
iconst_1
invokevirtual org.eclipse.jgit.internal.storage.pack.PackWriter.setDeltaBaseAsOffset:(Z)V
9: aload 5
iconst_1
invokevirtual org.eclipse.jgit.internal.storage.pack.PackWriter.setReuseDeltaCommits:(Z)V
10: aload 1
invokestatic org.eclipse.jgit.internal.JGitText.get:()Lorg/eclipse/jgit/internal/JGitText;
getfield org.eclipse.jgit.internal.JGitText.findingGarbage:Ljava/lang/String;
aload 0
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.objectsBefore:()I
invokeinterface org.eclipse.jgit.lib.ProgressMonitor.beginTask:(Ljava/lang/String;I)V
11: ldc 32
lstore 7
start local 7 12: aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.packsBefore:Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 10
goto 33
StackMap locals: org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector org.eclipse.jgit.lib.ProgressMonitor org.eclipse.jgit.storage.pack.PackConfig java.lang.Throwable java.lang.Throwable org.eclipse.jgit.internal.storage.pack.PackWriter org.eclipse.jgit.revwalk.RevWalk long top java.util.Iterator
StackMap stack:
13: aload 10
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.eclipse.jgit.internal.storage.dfs.DfsPackFile
astore 9
start local 9 14: aload 9
aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.ctx:Lorg/eclipse/jgit/internal/storage/dfs/DfsReader;
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsPackFile.getPackIndex:(Lorg/eclipse/jgit/internal/storage/dfs/DfsReader;)Lorg/eclipse/jgit/internal/storage/file/PackIndex;
astore 11
start local 11 15: aload 9
aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.ctx:Lorg/eclipse/jgit/internal/storage/dfs/DfsReader;
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsPackFile.getReverseIdx:(Lorg/eclipse/jgit/internal/storage/dfs/DfsReader;)Lorg/eclipse/jgit/internal/storage/file/PackReverseIndex;
astore 12
start local 12 16: aload 9
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsPackFile.getPackDescription:()Lorg/eclipse/jgit/internal/storage/dfs/DfsPackDescription;
getstatic org.eclipse.jgit.internal.storage.pack.PackExt.PACK:Lorg/eclipse/jgit/internal/storage/pack/PackExt;
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsPackDescription.getFileSize:(Lorg/eclipse/jgit/internal/storage/pack/PackExt;)J
17: ldc 20
18: lsub
lstore 13
start local 13 19: aload 11
invokevirtual org.eclipse.jgit.internal.storage.file.PackIndex.iterator:()Ljava/util/Iterator;
astore 16
goto 32
StackMap locals: org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector org.eclipse.jgit.lib.ProgressMonitor org.eclipse.jgit.storage.pack.PackConfig java.lang.Throwable java.lang.Throwable org.eclipse.jgit.internal.storage.pack.PackWriter org.eclipse.jgit.revwalk.RevWalk long org.eclipse.jgit.internal.storage.dfs.DfsPackFile java.util.Iterator org.eclipse.jgit.internal.storage.file.PackIndex org.eclipse.jgit.internal.storage.file.PackReverseIndex long top java.util.Iterator
StackMap stack:
20: aload 16
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.eclipse.jgit.internal.storage.file.PackIndex$MutableEntry
astore 15
start local 15 21: aload 1
iconst_1
invokeinterface org.eclipse.jgit.lib.ProgressMonitor.update:(I)V
22: aload 15
invokevirtual org.eclipse.jgit.internal.storage.file.PackIndex$MutableEntry.toObjectId:()Lorg/eclipse/jgit/lib/ObjectId;
astore 17
start local 17 23: aload 6
aload 17
invokevirtual org.eclipse.jgit.revwalk.RevWalk.lookupOrNull:(Lorg/eclipse/jgit/lib/AnyObjectId;)Lorg/eclipse/jgit/revwalk/RevObject;
ifnonnull 32
aload 0
aload 17
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.anyPackHas:(Lorg/eclipse/jgit/lib/AnyObjectId;)Z
ifeq 25
24: goto 32
25: StackMap locals: org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector org.eclipse.jgit.lib.ProgressMonitor org.eclipse.jgit.storage.pack.PackConfig java.lang.Throwable java.lang.Throwable org.eclipse.jgit.internal.storage.pack.PackWriter org.eclipse.jgit.revwalk.RevWalk long org.eclipse.jgit.internal.storage.dfs.DfsPackFile java.util.Iterator org.eclipse.jgit.internal.storage.file.PackIndex org.eclipse.jgit.internal.storage.file.PackReverseIndex long org.eclipse.jgit.internal.storage.file.PackIndex$MutableEntry java.util.Iterator org.eclipse.jgit.lib.ObjectId
StackMap stack:
aload 15
invokevirtual org.eclipse.jgit.internal.storage.file.PackIndex$MutableEntry.getOffset:()J
lstore 18
start local 18 26: aload 9
aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.ctx:Lorg/eclipse/jgit/internal/storage/dfs/DfsReader;
lload 18
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsPackFile.getObjectType:(Lorg/eclipse/jgit/internal/storage/dfs/DfsReader;J)I
istore 20
start local 20 27: aload 5
aload 6
aload 17
iload 20
invokevirtual org.eclipse.jgit.revwalk.RevWalk.lookupAny:(Lorg/eclipse/jgit/lib/AnyObjectId;I)Lorg/eclipse/jgit/revwalk/RevObject;
invokevirtual org.eclipse.jgit.internal.storage.pack.PackWriter.addObject:(Lorg/eclipse/jgit/revwalk/RevObject;)V
28: aload 12
lload 18
lload 13
invokevirtual org.eclipse.jgit.internal.storage.file.PackReverseIndex.findNextOffset:(JJ)J
29: lload 18
30: lsub
lstore 21
start local 21 31: lload 7
lload 21
ladd
lstore 7
end local 21 end local 20 end local 18 end local 17 end local 15 32: StackMap locals: org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector org.eclipse.jgit.lib.ProgressMonitor org.eclipse.jgit.storage.pack.PackConfig java.lang.Throwable java.lang.Throwable org.eclipse.jgit.internal.storage.pack.PackWriter org.eclipse.jgit.revwalk.RevWalk long org.eclipse.jgit.internal.storage.dfs.DfsPackFile java.util.Iterator org.eclipse.jgit.internal.storage.file.PackIndex org.eclipse.jgit.internal.storage.file.PackReverseIndex long top java.util.Iterator
StackMap stack:
aload 16
invokeinterface java.util.Iterator.hasNext:()Z
ifne 20
end local 13 end local 12 end local 11 end local 9 33: StackMap locals: org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector org.eclipse.jgit.lib.ProgressMonitor org.eclipse.jgit.storage.pack.PackConfig java.lang.Throwable java.lang.Throwable org.eclipse.jgit.internal.storage.pack.PackWriter org.eclipse.jgit.revwalk.RevWalk long top java.util.Iterator
StackMap stack:
aload 10
invokeinterface java.util.Iterator.hasNext:()Z
ifne 13
34: aload 1
invokeinterface org.eclipse.jgit.lib.ProgressMonitor.endTask:()V
35: lconst_0
aload 5
invokevirtual org.eclipse.jgit.internal.storage.pack.PackWriter.getObjectCount:()J
lcmp
ifge 37
36: aload 0
getstatic org.eclipse.jgit.internal.storage.dfs.DfsObjDatabase$PackSource.UNREACHABLE_GARBAGE:Lorg/eclipse/jgit/internal/storage/dfs/DfsObjDatabase$PackSource;
aload 5
aload 1
lload 7
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.writePack:(Lorg/eclipse/jgit/internal/storage/dfs/DfsObjDatabase$PackSource;Lorg/eclipse/jgit/internal/storage/pack/PackWriter;Lorg/eclipse/jgit/lib/ProgressMonitor;J)Lorg/eclipse/jgit/internal/storage/dfs/DfsPackDescription;
pop
end local 7 37: StackMap locals: org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector org.eclipse.jgit.lib.ProgressMonitor org.eclipse.jgit.storage.pack.PackConfig java.lang.Throwable java.lang.Throwable org.eclipse.jgit.internal.storage.pack.PackWriter org.eclipse.jgit.revwalk.RevWalk
StackMap stack:
aload 6
ifnull 40
aload 6
invokevirtual org.eclipse.jgit.revwalk.RevWalk.close:()V
goto 40
StackMap locals:
StackMap stack: java.lang.Throwable
38: astore 3
aload 6
ifnull 39
aload 6
invokevirtual org.eclipse.jgit.revwalk.RevWalk.close:()V
end local 6 StackMap locals:
StackMap stack:
39: aload 3
athrow
StackMap locals:
StackMap stack:
40: aload 5
ifnull 48
aload 5
invokevirtual org.eclipse.jgit.internal.storage.pack.PackWriter.close:()V
goto 48
StackMap locals:
StackMap stack: java.lang.Throwable
41: astore 4
aload 3
ifnonnull 42
aload 4
astore 3
goto 43
StackMap locals:
StackMap stack:
42: aload 3
aload 4
if_acmpeq 43
aload 3
aload 4
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
43: aload 5
ifnull 44
aload 5
invokevirtual org.eclipse.jgit.internal.storage.pack.PackWriter.close:()V
end local 5 StackMap locals:
StackMap stack:
44: aload 3
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
45: astore 4
aload 3
ifnonnull 46
aload 4
astore 3
goto 47
StackMap locals:
StackMap stack:
46: aload 3
aload 4
if_acmpeq 47
aload 3
aload 4
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
47: aload 3
athrow
48: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 49 0 this Lorg/eclipse/jgit/internal/storage/dfs/DfsGarbageCollector;
0 49 1 pm Lorg/eclipse/jgit/lib/ProgressMonitor;
1 49 2 cfg Lorg/eclipse/jgit/storage/pack/PackConfig;
7 44 5 pw Lorg/eclipse/jgit/internal/storage/pack/PackWriter;
8 39 6 pool Lorg/eclipse/jgit/revwalk/RevWalk;
12 37 7 estimatedPackSize J
14 33 9 oldPack Lorg/eclipse/jgit/internal/storage/dfs/DfsPackFile;
15 33 11 oldIdx Lorg/eclipse/jgit/internal/storage/file/PackIndex;
16 33 12 oldRevIdx Lorg/eclipse/jgit/internal/storage/file/PackReverseIndex;
19 33 13 maxOffset J
21 32 15 ent Lorg/eclipse/jgit/internal/storage/file/PackIndex$MutableEntry;
23 32 17 id Lorg/eclipse/jgit/lib/ObjectId;
26 32 18 offset J
27 32 20 type I
31 32 21 objSize J
Exception table:
from to target type
8 37 38 any
7 40 41 any
6 45 45 any
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
pm
private boolean anyPackHas(org.eclipse.jgit.lib.AnyObjectId);
descriptor: (Lorg/eclipse/jgit/lib/AnyObjectId;)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=4, args_size=2
start local 0 start local 1 0: aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.newPackObj:Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 3
goto 4
StackMap locals: org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector org.eclipse.jgit.lib.AnyObjectId top java.util.Iterator
StackMap stack:
1: aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.eclipse.jgit.lib.ObjectIdSet
astore 2
start local 2 2: aload 2
aload 1
invokeinterface org.eclipse.jgit.lib.ObjectIdSet.contains:(Lorg/eclipse/jgit/lib/AnyObjectId;)Z
ifeq 4
3: iconst_1
ireturn
end local 2 4: StackMap locals:
StackMap stack:
aload 3
invokeinterface java.util.Iterator.hasNext:()Z
ifne 1
5: iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/eclipse/jgit/internal/storage/dfs/DfsGarbageCollector;
0 6 1 id Lorg/eclipse/jgit/lib/AnyObjectId;
2 4 2 packedObjs Lorg/eclipse/jgit/lib/ObjectIdSet;
MethodParameters:
Name Flags
id
private static boolean isHead(org.eclipse.jgit.lib.Ref);
descriptor: (Lorg/eclipse/jgit/lib/Ref;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokeinterface org.eclipse.jgit.lib.Ref.getName:()Ljava/lang/String;
ldc "refs/heads/"
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 ref Lorg/eclipse/jgit/lib/Ref;
MethodParameters:
Name Flags
ref
private static boolean isTag(org.eclipse.jgit.lib.Ref);
descriptor: (Lorg/eclipse/jgit/lib/Ref;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokeinterface org.eclipse.jgit.lib.Ref.getName:()Ljava/lang/String;
ldc "refs/tags/"
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 ref Lorg/eclipse/jgit/lib/Ref;
MethodParameters:
Name Flags
ref
private int objectsBefore();
descriptor: ()I
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=4, args_size=1
start local 0 0: iconst_0
istore 1
start local 1 1: aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.packsBefore:Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 3
goto 4
StackMap locals: org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector int top java.util.Iterator
StackMap stack:
2: aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.eclipse.jgit.internal.storage.dfs.DfsPackFile
astore 2
start local 2 3: iload 1
aload 2
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsPackFile.getPackDescription:()Lorg/eclipse/jgit/internal/storage/dfs/DfsPackDescription;
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsPackDescription.getObjectCount:()J
l2i
iadd
istore 1
end local 2 4: StackMap locals:
StackMap stack:
aload 3
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
5: iload 1
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/eclipse/jgit/internal/storage/dfs/DfsGarbageCollector;
1 6 1 cnt I
3 4 2 p Lorg/eclipse/jgit/internal/storage/dfs/DfsPackFile;
private org.eclipse.jgit.internal.storage.pack.PackWriter newPackWriter();
descriptor: ()Lorg/eclipse/jgit/internal/storage/pack/PackWriter;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=2, args_size=1
start local 0 0: new org.eclipse.jgit.internal.storage.pack.PackWriter
dup
aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.packConfig:Lorg/eclipse/jgit/storage/pack/PackConfig;
aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.ctx:Lorg/eclipse/jgit/internal/storage/dfs/DfsReader;
invokespecial org.eclipse.jgit.internal.storage.pack.PackWriter.<init>:(Lorg/eclipse/jgit/storage/pack/PackConfig;Lorg/eclipse/jgit/lib/ObjectReader;)V
astore 1
start local 1 1: aload 1
iconst_1
invokevirtual org.eclipse.jgit.internal.storage.pack.PackWriter.setDeltaBaseAsOffset:(Z)V
2: aload 1
iconst_0
invokevirtual org.eclipse.jgit.internal.storage.pack.PackWriter.setReuseDeltaCommits:(Z)V
3: aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/eclipse/jgit/internal/storage/dfs/DfsGarbageCollector;
1 4 1 pw Lorg/eclipse/jgit/internal/storage/pack/PackWriter;
private long estimateGcPackSize(org.eclipse.jgit.internal.storage.dfs.DfsObjDatabase$PackSource, org.eclipse.jgit.internal.storage.dfs.DfsObjDatabase$PackSource[]);
descriptor: (Lorg/eclipse/jgit/internal/storage/dfs/DfsObjDatabase$PackSource;[Lorg/eclipse/jgit/internal/storage/dfs/DfsObjDatabase$PackSource;)J
flags: (0x0082) ACC_PRIVATE, ACC_VARARGS
Code:
stack=6, locals=8, args_size=3
start local 0 start local 1 start local 2 0: aload 1
aload 2
invokestatic java.util.EnumSet.of:(Ljava/lang/Enum;[Ljava/lang/Enum;)Ljava/util/EnumSet;
astore 3
start local 3 1: ldc 32
lstore 4
start local 4 2: aload 0
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.getSourcePacks:()Ljava/util/Set;
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 7
goto 6
StackMap locals: org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector org.eclipse.jgit.internal.storage.dfs.DfsObjDatabase$PackSource org.eclipse.jgit.internal.storage.dfs.DfsObjDatabase$PackSource[] java.util.EnumSet long top java.util.Iterator
StackMap stack:
3: aload 7
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.eclipse.jgit.internal.storage.dfs.DfsPackDescription
astore 6
start local 6 4: aload 3
aload 6
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsPackDescription.getPackSource:()Lorg/eclipse/jgit/internal/storage/dfs/DfsObjDatabase$PackSource;
invokevirtual java.util.EnumSet.contains:(Ljava/lang/Object;)Z
ifeq 6
5: lload 4
aload 6
getstatic org.eclipse.jgit.internal.storage.pack.PackExt.PACK:Lorg/eclipse/jgit/internal/storage/pack/PackExt;
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsPackDescription.getFileSize:(Lorg/eclipse/jgit/internal/storage/pack/PackExt;)J
ldc 32
lsub
ladd
lstore 4
end local 6 6: StackMap locals:
StackMap stack:
aload 7
invokeinterface java.util.Iterator.hasNext:()Z
ifne 3
7: lload 4
lreturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/eclipse/jgit/internal/storage/dfs/DfsGarbageCollector;
0 8 1 first Lorg/eclipse/jgit/internal/storage/dfs/DfsObjDatabase$PackSource;
0 8 2 rest [Lorg/eclipse/jgit/internal/storage/dfs/DfsObjDatabase$PackSource;
1 8 3 sourceSet Ljava/util/EnumSet<Lorg/eclipse/jgit/internal/storage/dfs/DfsObjDatabase$PackSource;>;
2 8 4 size J
4 6 6 pack Lorg/eclipse/jgit/internal/storage/dfs/DfsPackDescription;
MethodParameters:
Name Flags
first
rest
private org.eclipse.jgit.internal.storage.dfs.DfsPackDescription writePack(org.eclipse.jgit.internal.storage.dfs.DfsObjDatabase$PackSource, org.eclipse.jgit.internal.storage.pack.PackWriter, org.eclipse.jgit.lib.ProgressMonitor, long);
descriptor: (Lorg/eclipse/jgit/internal/storage/dfs/DfsObjDatabase$PackSource;Lorg/eclipse/jgit/internal/storage/pack/PackWriter;Lorg/eclipse/jgit/lib/ProgressMonitor;J)Lorg/eclipse/jgit/internal/storage/dfs/DfsPackDescription;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=11, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.repo:Lorg/eclipse/jgit/internal/storage/dfs/DfsRepository;
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsRepository.getObjectDatabase:()Lorg/eclipse/jgit/internal/storage/dfs/DfsObjDatabase;
aload 1
1: lload 4
2: invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsObjDatabase.newPack:(Lorg/eclipse/jgit/internal/storage/dfs/DfsObjDatabase$PackSource;J)Lorg/eclipse/jgit/internal/storage/dfs/DfsPackDescription;
astore 6
start local 6 3: aload 1
getstatic org.eclipse.jgit.internal.storage.dfs.DfsObjDatabase$PackSource.GC:Lorg/eclipse/jgit/internal/storage/dfs/DfsObjDatabase$PackSource;
if_acmpne 5
aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.reftableConfig:Lorg/eclipse/jgit/internal/storage/reftable/ReftableConfig;
ifnull 5
4: aload 0
aload 6
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.writeReftable:(Lorg/eclipse/jgit/internal/storage/dfs/DfsPackDescription;)V
5: StackMap locals: org.eclipse.jgit.internal.storage.dfs.DfsPackDescription
StackMap stack:
aconst_null
astore 7
aconst_null
astore 8
6: aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.objdb:Lorg/eclipse/jgit/internal/storage/dfs/DfsObjDatabase;
aload 6
getstatic org.eclipse.jgit.internal.storage.pack.PackExt.PACK:Lorg/eclipse/jgit/internal/storage/pack/PackExt;
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsObjDatabase.writeFile:(Lorg/eclipse/jgit/internal/storage/dfs/DfsPackDescription;Lorg/eclipse/jgit/internal/storage/pack/PackExt;)Lorg/eclipse/jgit/internal/storage/dfs/DfsOutputStream;
astore 9
start local 9 7: aload 2
aload 3
aload 3
aload 9
invokevirtual org.eclipse.jgit.internal.storage.pack.PackWriter.writePack:(Lorg/eclipse/jgit/lib/ProgressMonitor;Lorg/eclipse/jgit/lib/ProgressMonitor;Ljava/io/OutputStream;)V
8: aload 6
getstatic org.eclipse.jgit.internal.storage.pack.PackExt.PACK:Lorg/eclipse/jgit/internal/storage/pack/PackExt;
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsPackDescription.addFileExt:(Lorg/eclipse/jgit/internal/storage/pack/PackExt;)V
9: aload 6
getstatic org.eclipse.jgit.internal.storage.pack.PackExt.PACK:Lorg/eclipse/jgit/internal/storage/pack/PackExt;
aload 9
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsOutputStream.blockSize:()I
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsPackDescription.setBlockSize:(Lorg/eclipse/jgit/internal/storage/pack/PackExt;I)Lorg/eclipse/jgit/internal/storage/dfs/DfsPackDescription;
pop
10: aload 9
ifnull 16
aload 9
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsOutputStream.close:()V
goto 16
StackMap locals: org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector org.eclipse.jgit.internal.storage.dfs.DfsObjDatabase$PackSource org.eclipse.jgit.internal.storage.pack.PackWriter org.eclipse.jgit.lib.ProgressMonitor long org.eclipse.jgit.internal.storage.dfs.DfsPackDescription java.lang.Throwable java.lang.Throwable org.eclipse.jgit.internal.storage.dfs.DfsOutputStream
StackMap stack: java.lang.Throwable
11: astore 7
aload 9
ifnull 12
aload 9
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsOutputStream.close:()V
end local 9 StackMap locals:
StackMap stack:
12: aload 7
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
13: astore 8
aload 7
ifnonnull 14
aload 8
astore 7
goto 15
StackMap locals:
StackMap stack:
14: aload 7
aload 8
if_acmpeq 15
aload 7
aload 8
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
15: aload 7
athrow
16: StackMap locals:
StackMap stack:
aconst_null
astore 7
aconst_null
astore 8
17: aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.objdb:Lorg/eclipse/jgit/internal/storage/dfs/DfsObjDatabase;
aload 6
getstatic org.eclipse.jgit.internal.storage.pack.PackExt.INDEX:Lorg/eclipse/jgit/internal/storage/pack/PackExt;
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsObjDatabase.writeFile:(Lorg/eclipse/jgit/internal/storage/dfs/DfsPackDescription;Lorg/eclipse/jgit/internal/storage/pack/PackExt;)Lorg/eclipse/jgit/internal/storage/dfs/DfsOutputStream;
astore 9
start local 9 18: new org.eclipse.jgit.util.io.CountingOutputStream
dup
aload 9
invokespecial org.eclipse.jgit.util.io.CountingOutputStream.<init>:(Ljava/io/OutputStream;)V
astore 10
start local 10 19: aload 2
aload 10
invokevirtual org.eclipse.jgit.internal.storage.pack.PackWriter.writeIndex:(Ljava/io/OutputStream;)V
20: aload 6
getstatic org.eclipse.jgit.internal.storage.pack.PackExt.INDEX:Lorg/eclipse/jgit/internal/storage/pack/PackExt;
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsPackDescription.addFileExt:(Lorg/eclipse/jgit/internal/storage/pack/PackExt;)V
21: aload 6
getstatic org.eclipse.jgit.internal.storage.pack.PackExt.INDEX:Lorg/eclipse/jgit/internal/storage/pack/PackExt;
aload 10
invokevirtual org.eclipse.jgit.util.io.CountingOutputStream.getCount:()J
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsPackDescription.setFileSize:(Lorg/eclipse/jgit/internal/storage/pack/PackExt;J)Lorg/eclipse/jgit/internal/storage/dfs/DfsPackDescription;
pop
22: aload 6
getstatic org.eclipse.jgit.internal.storage.pack.PackExt.INDEX:Lorg/eclipse/jgit/internal/storage/pack/PackExt;
aload 9
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsOutputStream.blockSize:()I
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsPackDescription.setBlockSize:(Lorg/eclipse/jgit/internal/storage/pack/PackExt;I)Lorg/eclipse/jgit/internal/storage/dfs/DfsPackDescription;
pop
23: aload 6
aload 2
invokevirtual org.eclipse.jgit.internal.storage.pack.PackWriter.getIndexVersion:()I
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsPackDescription.setIndexVersion:(I)Lorg/eclipse/jgit/internal/storage/dfs/DfsPackDescription;
pop
end local 10 24: aload 9
ifnull 30
aload 9
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsOutputStream.close:()V
goto 30
StackMap locals: org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector org.eclipse.jgit.internal.storage.dfs.DfsObjDatabase$PackSource org.eclipse.jgit.internal.storage.pack.PackWriter org.eclipse.jgit.lib.ProgressMonitor long org.eclipse.jgit.internal.storage.dfs.DfsPackDescription java.lang.Throwable java.lang.Throwable org.eclipse.jgit.internal.storage.dfs.DfsOutputStream
StackMap stack: java.lang.Throwable
25: astore 7
aload 9
ifnull 26
aload 9
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsOutputStream.close:()V
end local 9 StackMap locals:
StackMap stack:
26: aload 7
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
27: astore 8
aload 7
ifnonnull 28
aload 8
astore 7
goto 29
StackMap locals:
StackMap stack:
28: aload 7
aload 8
if_acmpeq 29
aload 7
aload 8
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
29: aload 7
athrow
30: StackMap locals:
StackMap stack:
aload 2
aload 3
invokevirtual org.eclipse.jgit.internal.storage.pack.PackWriter.prepareBitmapIndex:(Lorg/eclipse/jgit/lib/ProgressMonitor;)Z
ifeq 44
31: aconst_null
astore 7
aconst_null
astore 8
32: aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.objdb:Lorg/eclipse/jgit/internal/storage/dfs/DfsObjDatabase;
aload 6
getstatic org.eclipse.jgit.internal.storage.pack.PackExt.BITMAP_INDEX:Lorg/eclipse/jgit/internal/storage/pack/PackExt;
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsObjDatabase.writeFile:(Lorg/eclipse/jgit/internal/storage/dfs/DfsPackDescription;Lorg/eclipse/jgit/internal/storage/pack/PackExt;)Lorg/eclipse/jgit/internal/storage/dfs/DfsOutputStream;
astore 9
start local 9 33: new org.eclipse.jgit.util.io.CountingOutputStream
dup
aload 9
invokespecial org.eclipse.jgit.util.io.CountingOutputStream.<init>:(Ljava/io/OutputStream;)V
astore 10
start local 10 34: aload 2
aload 10
invokevirtual org.eclipse.jgit.internal.storage.pack.PackWriter.writeBitmapIndex:(Ljava/io/OutputStream;)V
35: aload 6
getstatic org.eclipse.jgit.internal.storage.pack.PackExt.BITMAP_INDEX:Lorg/eclipse/jgit/internal/storage/pack/PackExt;
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsPackDescription.addFileExt:(Lorg/eclipse/jgit/internal/storage/pack/PackExt;)V
36: aload 6
getstatic org.eclipse.jgit.internal.storage.pack.PackExt.BITMAP_INDEX:Lorg/eclipse/jgit/internal/storage/pack/PackExt;
aload 10
invokevirtual org.eclipse.jgit.util.io.CountingOutputStream.getCount:()J
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsPackDescription.setFileSize:(Lorg/eclipse/jgit/internal/storage/pack/PackExt;J)Lorg/eclipse/jgit/internal/storage/dfs/DfsPackDescription;
pop
37: aload 6
getstatic org.eclipse.jgit.internal.storage.pack.PackExt.BITMAP_INDEX:Lorg/eclipse/jgit/internal/storage/pack/PackExt;
aload 9
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsOutputStream.blockSize:()I
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsPackDescription.setBlockSize:(Lorg/eclipse/jgit/internal/storage/pack/PackExt;I)Lorg/eclipse/jgit/internal/storage/dfs/DfsPackDescription;
pop
end local 10 38: aload 9
ifnull 44
aload 9
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsOutputStream.close:()V
goto 44
StackMap locals: org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector org.eclipse.jgit.internal.storage.dfs.DfsObjDatabase$PackSource org.eclipse.jgit.internal.storage.pack.PackWriter org.eclipse.jgit.lib.ProgressMonitor long org.eclipse.jgit.internal.storage.dfs.DfsPackDescription java.lang.Throwable java.lang.Throwable org.eclipse.jgit.internal.storage.dfs.DfsOutputStream
StackMap stack: java.lang.Throwable
39: astore 7
aload 9
ifnull 40
aload 9
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsOutputStream.close:()V
end local 9 StackMap locals:
StackMap stack:
40: aload 7
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
41: astore 8
aload 7
ifnonnull 42
aload 8
astore 7
goto 43
StackMap locals:
StackMap stack:
42: aload 7
aload 8
if_acmpeq 43
aload 7
aload 8
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
43: aload 7
athrow
44: StackMap locals:
StackMap stack:
aload 2
invokevirtual org.eclipse.jgit.internal.storage.pack.PackWriter.getStatistics:()Lorg/eclipse/jgit/storage/pack/PackStatistics;
astore 7
start local 7 45: aload 6
aload 7
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsPackDescription.setPackStats:(Lorg/eclipse/jgit/storage/pack/PackStatistics;)Lorg/eclipse/jgit/internal/storage/dfs/DfsPackDescription;
pop
46: aload 6
aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.startTimeMillis:J
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsPackDescription.setLastModified:(J)Lorg/eclipse/jgit/internal/storage/dfs/DfsPackDescription;
pop
47: aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.newPackDesc:Ljava/util/List;
aload 6
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
48: aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.newPackStats:Ljava/util/List;
aload 7
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
49: aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.newPackObj:Ljava/util/List;
aload 2
invokevirtual org.eclipse.jgit.internal.storage.pack.PackWriter.getObjectSet:()Lorg/eclipse/jgit/lib/ObjectIdOwnerMap;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
50: aload 6
areturn
end local 7 end local 6 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 51 0 this Lorg/eclipse/jgit/internal/storage/dfs/DfsGarbageCollector;
0 51 1 source Lorg/eclipse/jgit/internal/storage/dfs/DfsObjDatabase$PackSource;
0 51 2 pw Lorg/eclipse/jgit/internal/storage/pack/PackWriter;
0 51 3 pm Lorg/eclipse/jgit/lib/ProgressMonitor;
0 51 4 estimatedPackSize J
3 51 6 pack Lorg/eclipse/jgit/internal/storage/dfs/DfsPackDescription;
7 12 9 out Lorg/eclipse/jgit/internal/storage/dfs/DfsOutputStream;
18 26 9 out Lorg/eclipse/jgit/internal/storage/dfs/DfsOutputStream;
19 24 10 cnt Lorg/eclipse/jgit/util/io/CountingOutputStream;
33 40 9 out Lorg/eclipse/jgit/internal/storage/dfs/DfsOutputStream;
34 38 10 cnt Lorg/eclipse/jgit/util/io/CountingOutputStream;
45 51 7 stats Lorg/eclipse/jgit/storage/pack/PackStatistics;
Exception table:
from to target type
7 10 11 any
6 13 13 any
18 24 25 any
17 27 27 any
33 38 39 any
32 41 41 any
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
source
pw
pm
estimatedPackSize
private void writeReftable();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.reftableConfig:Lorg/eclipse/jgit/internal/storage/reftable/ReftableConfig;
ifnull 5
1: aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.objdb:Lorg/eclipse/jgit/internal/storage/dfs/DfsObjDatabase;
getstatic org.eclipse.jgit.internal.storage.dfs.DfsObjDatabase$PackSource.GC:Lorg/eclipse/jgit/internal/storage/dfs/DfsObjDatabase$PackSource;
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsObjDatabase.newPack:(Lorg/eclipse/jgit/internal/storage/dfs/DfsObjDatabase$PackSource;)Lorg/eclipse/jgit/internal/storage/dfs/DfsPackDescription;
astore 1
start local 1 2: aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.newPackDesc:Ljava/util/List;
aload 1
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
3: aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.newPackStats:Ljava/util/List;
aconst_null
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
4: aload 0
aload 1
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.writeReftable:(Lorg/eclipse/jgit/internal/storage/dfs/DfsPackDescription;)V
end local 1 5: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/eclipse/jgit/internal/storage/dfs/DfsGarbageCollector;
2 5 1 pack Lorg/eclipse/jgit/internal/storage/dfs/DfsPackDescription;
Exceptions:
throws java.io.IOException
private void writeReftable(org.eclipse.jgit.internal.storage.dfs.DfsPackDescription);
descriptor: (Lorg/eclipse/jgit/internal/storage/dfs/DfsPackDescription;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=7, args_size=2
start local 0 start local 1 0: aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.convertToReftable:Z
ifeq 3
aload 0
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.hasGcReftable:()Z
ifne 3
1: aload 0
aload 1
aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.refsBefore:Ljava/util/Collection;
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.writeReftable:(Lorg/eclipse/jgit/internal/storage/dfs/DfsPackDescription;Ljava/util/Collection;)V
2: return
3: StackMap locals:
StackMap stack:
aconst_null
astore 2
aconst_null
astore 3
4: aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.ctx:Lorg/eclipse/jgit/internal/storage/dfs/DfsReader;
aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.reftablesBefore:Ljava/util/List;
invokestatic org.eclipse.jgit.internal.storage.dfs.DfsReftableStack.open:(Lorg/eclipse/jgit/internal/storage/dfs/DfsReader;Ljava/util/List;)Lorg/eclipse/jgit/internal/storage/dfs/DfsReftableStack;
astore 4
start local 4 5: aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.objdb:Lorg/eclipse/jgit/internal/storage/dfs/DfsObjDatabase;
aload 1
getstatic org.eclipse.jgit.internal.storage.pack.PackExt.REFTABLE:Lorg/eclipse/jgit/internal/storage/pack/PackExt;
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsObjDatabase.writeFile:(Lorg/eclipse/jgit/internal/storage/dfs/DfsPackDescription;Lorg/eclipse/jgit/internal/storage/pack/PackExt;)Lorg/eclipse/jgit/internal/storage/dfs/DfsOutputStream;
astore 5
start local 5 6: new org.eclipse.jgit.internal.storage.reftable.ReftableCompactor
dup
aload 5
invokespecial org.eclipse.jgit.internal.storage.reftable.ReftableCompactor.<init>:(Ljava/io/OutputStream;)V
astore 6
start local 6 7: aload 6
aload 4
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsReftableStack.readers:()Ljava/util/List;
invokevirtual org.eclipse.jgit.internal.storage.reftable.ReftableCompactor.addAll:(Ljava/util/List;)V
8: aload 6
aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.includeDeletes:Z
invokevirtual org.eclipse.jgit.internal.storage.reftable.ReftableCompactor.setIncludeDeletes:(Z)Lorg/eclipse/jgit/internal/storage/reftable/ReftableCompactor;
pop
9: aload 6
aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.reftableConfig:Lorg/eclipse/jgit/internal/storage/reftable/ReftableConfig;
aload 5
invokestatic org.eclipse.jgit.internal.storage.dfs.DfsPackCompactor.configureReftable:(Lorg/eclipse/jgit/internal/storage/reftable/ReftableConfig;Lorg/eclipse/jgit/internal/storage/dfs/DfsOutputStream;)Lorg/eclipse/jgit/internal/storage/reftable/ReftableConfig;
invokevirtual org.eclipse.jgit.internal.storage.reftable.ReftableCompactor.setConfig:(Lorg/eclipse/jgit/internal/storage/reftable/ReftableConfig;)Lorg/eclipse/jgit/internal/storage/reftable/ReftableCompactor;
pop
10: aload 6
invokevirtual org.eclipse.jgit.internal.storage.reftable.ReftableCompactor.compact:()V
11: aload 1
getstatic org.eclipse.jgit.internal.storage.pack.PackExt.REFTABLE:Lorg/eclipse/jgit/internal/storage/pack/PackExt;
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsPackDescription.addFileExt:(Lorg/eclipse/jgit/internal/storage/pack/PackExt;)V
12: aload 1
aload 6
invokevirtual org.eclipse.jgit.internal.storage.reftable.ReftableCompactor.getStats:()Lorg/eclipse/jgit/internal/storage/reftable/ReftableWriter$Stats;
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsPackDescription.setReftableStats:(Lorg/eclipse/jgit/internal/storage/reftable/ReftableWriter$Stats;)V
end local 6 13: aload 5
ifnull 16
aload 5
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsOutputStream.close:()V
goto 16
StackMap locals: org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector org.eclipse.jgit.internal.storage.dfs.DfsPackDescription java.lang.Throwable java.lang.Throwable org.eclipse.jgit.internal.storage.dfs.DfsReftableStack org.eclipse.jgit.internal.storage.dfs.DfsOutputStream
StackMap stack: java.lang.Throwable
14: astore 2
aload 5
ifnull 15
aload 5
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsOutputStream.close:()V
end local 5 StackMap locals:
StackMap stack:
15: aload 2
athrow
StackMap locals:
StackMap stack:
16: aload 4
ifnull 24
aload 4
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsReftableStack.close:()V
goto 24
StackMap locals:
StackMap stack: java.lang.Throwable
17: astore 3
aload 2
ifnonnull 18
aload 3
astore 2
goto 19
StackMap locals:
StackMap stack:
18: aload 2
aload 3
if_acmpeq 19
aload 2
aload 3
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
19: aload 4
ifnull 20
aload 4
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsReftableStack.close:()V
end local 4 StackMap locals:
StackMap stack:
20: aload 2
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
21: astore 3
aload 2
ifnonnull 22
aload 3
astore 2
goto 23
StackMap locals:
StackMap stack:
22: aload 2
aload 3
if_acmpeq 23
aload 2
aload 3
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
23: aload 2
athrow
24: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 25 0 this Lorg/eclipse/jgit/internal/storage/dfs/DfsGarbageCollector;
0 25 1 pack Lorg/eclipse/jgit/internal/storage/dfs/DfsPackDescription;
5 20 4 stack Lorg/eclipse/jgit/internal/storage/dfs/DfsReftableStack;
6 15 5 out Lorg/eclipse/jgit/internal/storage/dfs/DfsOutputStream;
7 13 6 compact Lorg/eclipse/jgit/internal/storage/reftable/ReftableCompactor;
Exception table:
from to target type
6 13 14 any
5 16 17 any
4 21 21 any
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
pack
private boolean hasGcReftable();
descriptor: ()Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=3, args_size=1
start local 0 0: aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.reftablesBefore:Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 2
goto 4
StackMap locals: org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector top java.util.Iterator
StackMap stack:
1: aload 2
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.eclipse.jgit.internal.storage.dfs.DfsReftable
astore 1
start local 1 2: aload 1
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsReftable.getPackDescription:()Lorg/eclipse/jgit/internal/storage/dfs/DfsPackDescription;
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsPackDescription.getPackSource:()Lorg/eclipse/jgit/internal/storage/dfs/DfsObjDatabase$PackSource;
getstatic org.eclipse.jgit.internal.storage.dfs.DfsObjDatabase$PackSource.GC:Lorg/eclipse/jgit/internal/storage/dfs/DfsObjDatabase$PackSource;
if_acmpne 4
3: iconst_1
ireturn
end local 1 4: StackMap locals:
StackMap stack:
aload 2
invokeinterface java.util.Iterator.hasNext:()Z
ifne 1
5: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/eclipse/jgit/internal/storage/dfs/DfsGarbageCollector;
2 4 1 table Lorg/eclipse/jgit/internal/storage/dfs/DfsReftable;
private void writeReftable(org.eclipse.jgit.internal.storage.dfs.DfsPackDescription, java.util.Collection<org.eclipse.jgit.lib.Ref>);
descriptor: (Lorg/eclipse/jgit/internal/storage/dfs/DfsPackDescription;Ljava/util/Collection;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=8, args_size=3
start local 0 start local 1 start local 2 0: aconst_null
astore 3
aconst_null
astore 4
1: aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.objdb:Lorg/eclipse/jgit/internal/storage/dfs/DfsObjDatabase;
aload 1
getstatic org.eclipse.jgit.internal.storage.pack.PackExt.REFTABLE:Lorg/eclipse/jgit/internal/storage/pack/PackExt;
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsObjDatabase.writeFile:(Lorg/eclipse/jgit/internal/storage/dfs/DfsPackDescription;Lorg/eclipse/jgit/internal/storage/pack/PackExt;)Lorg/eclipse/jgit/internal/storage/dfs/DfsOutputStream;
astore 5
start local 5 2: aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.reftableConfig:Lorg/eclipse/jgit/internal/storage/reftable/ReftableConfig;
aload 5
invokestatic org.eclipse.jgit.internal.storage.dfs.DfsPackCompactor.configureReftable:(Lorg/eclipse/jgit/internal/storage/reftable/ReftableConfig;Lorg/eclipse/jgit/internal/storage/dfs/DfsOutputStream;)Lorg/eclipse/jgit/internal/storage/reftable/ReftableConfig;
astore 6
start local 6 3: new org.eclipse.jgit.internal.storage.reftable.ReftableWriter
dup
aload 6
aload 5
invokespecial org.eclipse.jgit.internal.storage.reftable.ReftableWriter.<init>:(Lorg/eclipse/jgit/internal/storage/reftable/ReftableConfig;Ljava/io/OutputStream;)V
4: aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.reftableInitialMinUpdateIndex:J
invokevirtual org.eclipse.jgit.internal.storage.reftable.ReftableWriter.setMinUpdateIndex:(J)Lorg/eclipse/jgit/internal/storage/reftable/ReftableWriter;
5: aload 0
getfield org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector.reftableInitialMaxUpdateIndex:J
invokevirtual org.eclipse.jgit.internal.storage.reftable.ReftableWriter.setMaxUpdateIndex:(J)Lorg/eclipse/jgit/internal/storage/reftable/ReftableWriter;
invokevirtual org.eclipse.jgit.internal.storage.reftable.ReftableWriter.begin:()Lorg/eclipse/jgit/internal/storage/reftable/ReftableWriter;
6: aload 2
invokevirtual org.eclipse.jgit.internal.storage.reftable.ReftableWriter.sortAndWriteRefs:(Ljava/util/Collection;)Lorg/eclipse/jgit/internal/storage/reftable/ReftableWriter;
invokevirtual org.eclipse.jgit.internal.storage.reftable.ReftableWriter.finish:()Lorg/eclipse/jgit/internal/storage/reftable/ReftableWriter;
7: astore 7
start local 7 8: aload 1
getstatic org.eclipse.jgit.internal.storage.pack.PackExt.REFTABLE:Lorg/eclipse/jgit/internal/storage/pack/PackExt;
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsPackDescription.addFileExt:(Lorg/eclipse/jgit/internal/storage/pack/PackExt;)V
9: aload 1
aload 7
invokevirtual org.eclipse.jgit.internal.storage.reftable.ReftableWriter.getStats:()Lorg/eclipse/jgit/internal/storage/reftable/ReftableWriter$Stats;
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsPackDescription.setReftableStats:(Lorg/eclipse/jgit/internal/storage/reftable/ReftableWriter$Stats;)V
end local 7 end local 6 10: aload 5
ifnull 16
aload 5
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsOutputStream.close:()V
goto 16
StackMap locals: org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector org.eclipse.jgit.internal.storage.dfs.DfsPackDescription java.util.Collection java.lang.Throwable java.lang.Throwable org.eclipse.jgit.internal.storage.dfs.DfsOutputStream
StackMap stack: java.lang.Throwable
11: astore 3
aload 5
ifnull 12
aload 5
invokevirtual org.eclipse.jgit.internal.storage.dfs.DfsOutputStream.close:()V
end local 5 StackMap locals:
StackMap stack:
12: aload 3
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
13: astore 4
aload 3
ifnonnull 14
aload 4
astore 3
goto 15
StackMap locals:
StackMap stack:
14: aload 3
aload 4
if_acmpeq 15
aload 3
aload 4
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
15: aload 3
athrow
16: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Lorg/eclipse/jgit/internal/storage/dfs/DfsGarbageCollector;
0 17 1 pack Lorg/eclipse/jgit/internal/storage/dfs/DfsPackDescription;
0 17 2 refs Ljava/util/Collection<Lorg/eclipse/jgit/lib/Ref;>;
2 12 5 out Lorg/eclipse/jgit/internal/storage/dfs/DfsOutputStream;
3 10 6 cfg Lorg/eclipse/jgit/internal/storage/reftable/ReftableConfig;
8 10 7 writer Lorg/eclipse/jgit/internal/storage/reftable/ReftableWriter;
Exception table:
from to target type
2 10 11 any
1 13 13 any
Exceptions:
throws java.io.IOException
Signature: (Lorg/eclipse/jgit/internal/storage/dfs/DfsPackDescription;Ljava/util/Collection<Lorg/eclipse/jgit/lib/Ref;>;)V
MethodParameters:
Name Flags
pack
refs
}
SourceFile: "DfsGarbageCollector.java"
InnerClasses:
public final PackSource = org.eclipse.jgit.internal.storage.dfs.DfsObjDatabase$PackSource of org.eclipse.jgit.internal.storage.dfs.DfsObjDatabase
public MutableEntry = org.eclipse.jgit.internal.storage.file.PackIndex$MutableEntry of org.eclipse.jgit.internal.storage.file.PackIndex
public Stats = org.eclipse.jgit.internal.storage.reftable.ReftableWriter$Stats of org.eclipse.jgit.internal.storage.reftable.ReftableWriter
public abstract Entry = org.eclipse.jgit.lib.ObjectIdOwnerMap$Entry of org.eclipse.jgit.lib.ObjectIdOwnerMap