class org.eclipse.jgit.transport.TransportAmazonS3$DatabaseS3 extends org.eclipse.jgit.transport.WalkRemoteObjectDatabase
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: org.eclipse.jgit.transport.TransportAmazonS3$DatabaseS3
super_class: org.eclipse.jgit.transport.WalkRemoteObjectDatabase
{
private final java.lang.String bucketName;
descriptor: Ljava/lang/String;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.lang.String objectsKey;
descriptor: Ljava/lang/String;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
final org.eclipse.jgit.transport.TransportAmazonS3 this$0;
descriptor: Lorg/eclipse/jgit/transport/TransportAmazonS3;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
void <init>(org.eclipse.jgit.transport.TransportAmazonS3, java.lang.String, java.lang.String);
descriptor: (Lorg/eclipse/jgit/transport/TransportAmazonS3;Ljava/lang/String;Ljava/lang/String;)V
flags: (0x0000)
Code:
stack=2, locals=4, args_size=4
start local 0 start local 2 start local 3 0: aload 0
aload 1
putfield org.eclipse.jgit.transport.TransportAmazonS3$DatabaseS3.this$0:Lorg/eclipse/jgit/transport/TransportAmazonS3;
aload 0
invokespecial org.eclipse.jgit.transport.WalkRemoteObjectDatabase.<init>:()V
1: aload 0
aload 2
putfield org.eclipse.jgit.transport.TransportAmazonS3$DatabaseS3.bucketName:Ljava/lang/String;
2: aload 0
aload 3
putfield org.eclipse.jgit.transport.TransportAmazonS3$DatabaseS3.objectsKey:Ljava/lang/String;
3: return
end local 3 end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/eclipse/jgit/transport/TransportAmazonS3$DatabaseS3;
0 4 2 b Ljava/lang/String;
0 4 3 o Ljava/lang/String;
MethodParameters:
Name Flags
this$0 final
b final
o final
private java.lang.String resolveKey(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: aload 1
ldc "/"
invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
ifeq 2
1: aload 1
iconst_0
aload 1
invokevirtual java.lang.String.length:()I
iconst_1
isub
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
astore 1
2: StackMap locals:
StackMap stack:
aload 0
getfield org.eclipse.jgit.transport.TransportAmazonS3$DatabaseS3.objectsKey:Ljava/lang/String;
astore 2
start local 2 3: goto 6
4: StackMap locals: java.lang.String
StackMap stack:
aload 2
iconst_0
aload 2
bipush 47
invokevirtual java.lang.String.lastIndexOf:(I)I
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
astore 2
5: aload 1
iconst_3
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
astore 1
6: StackMap locals:
StackMap stack:
aload 1
ldc "../"
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifne 4
7: new java.lang.StringBuilder
dup
aload 2
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc "/"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/eclipse/jgit/transport/TransportAmazonS3$DatabaseS3;
0 8 1 subpath Ljava/lang/String;
3 8 2 k Ljava/lang/String;
MethodParameters:
Name Flags
subpath
org.eclipse.jgit.transport.URIish getURI();
descriptor: ()Lorg/eclipse/jgit/transport/URIish;
flags: (0x0000)
Code:
stack=4, locals=2, args_size=1
start local 0 0: new org.eclipse.jgit.transport.URIish
dup
invokespecial org.eclipse.jgit.transport.URIish.<init>:()V
astore 1
start local 1 1: aload 1
ldc "amazon-s3"
invokevirtual org.eclipse.jgit.transport.URIish.setScheme:(Ljava/lang/String;)Lorg/eclipse/jgit/transport/URIish;
astore 1
2: aload 1
aload 0
getfield org.eclipse.jgit.transport.TransportAmazonS3$DatabaseS3.bucketName:Ljava/lang/String;
invokevirtual org.eclipse.jgit.transport.URIish.setHost:(Ljava/lang/String;)Lorg/eclipse/jgit/transport/URIish;
astore 1
3: aload 1
new java.lang.StringBuilder
dup
ldc "/"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield org.eclipse.jgit.transport.TransportAmazonS3$DatabaseS3.objectsKey:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual org.eclipse.jgit.transport.URIish.setPath:(Ljava/lang/String;)Lorg/eclipse/jgit/transport/URIish;
astore 1
4: aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/eclipse/jgit/transport/TransportAmazonS3$DatabaseS3;
1 5 1 u Lorg/eclipse/jgit/transport/URIish;
java.util.Collection<org.eclipse.jgit.transport.WalkRemoteObjectDatabase> getAlternates();
descriptor: ()Ljava/util/Collection;
flags: (0x0000)
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
ldc "info/alternates"
invokevirtual org.eclipse.jgit.transport.TransportAmazonS3$DatabaseS3.readAlternates:(Ljava/lang/String;)Ljava/util/Collection;
1: areturn
2: StackMap locals:
StackMap stack: java.io.FileNotFoundException
pop
3: aconst_null
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/eclipse/jgit/transport/TransportAmazonS3$DatabaseS3;
Exception table:
from to target type
0 1 2 Class java.io.FileNotFoundException
Exceptions:
throws java.io.IOException
Signature: ()Ljava/util/Collection<Lorg/eclipse/jgit/transport/WalkRemoteObjectDatabase;>;
org.eclipse.jgit.transport.WalkRemoteObjectDatabase openAlternate(java.lang.String);
descriptor: (Ljava/lang/String;)Lorg/eclipse/jgit/transport/WalkRemoteObjectDatabase;
flags: (0x0000)
Code:
stack=6, locals=2, args_size=2
start local 0 start local 1 0: new org.eclipse.jgit.transport.TransportAmazonS3$DatabaseS3
dup
aload 0
getfield org.eclipse.jgit.transport.TransportAmazonS3$DatabaseS3.this$0:Lorg/eclipse/jgit/transport/TransportAmazonS3;
aload 0
getfield org.eclipse.jgit.transport.TransportAmazonS3$DatabaseS3.bucketName:Ljava/lang/String;
aload 0
aload 1
invokevirtual org.eclipse.jgit.transport.TransportAmazonS3$DatabaseS3.resolveKey:(Ljava/lang/String;)Ljava/lang/String;
invokespecial org.eclipse.jgit.transport.TransportAmazonS3$DatabaseS3.<init>:(Lorg/eclipse/jgit/transport/TransportAmazonS3;Ljava/lang/String;Ljava/lang/String;)V
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/eclipse/jgit/transport/TransportAmazonS3$DatabaseS3;
0 1 1 location Ljava/lang/String;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
location
java.util.Collection<java.lang.String> getPackNames();
descriptor: ()Ljava/util/Collection;
flags: (0x0000)
Code:
stack=6, locals=6, 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 1
aload 0
getfield org.eclipse.jgit.transport.TransportAmazonS3$DatabaseS3.this$0:Lorg/eclipse/jgit/transport/TransportAmazonS3;
getfield org.eclipse.jgit.transport.TransportAmazonS3.s3:Lorg/eclipse/jgit/transport/AmazonS3;
aload 0
getfield org.eclipse.jgit.transport.TransportAmazonS3$DatabaseS3.this$0:Lorg/eclipse/jgit/transport/TransportAmazonS3;
getfield org.eclipse.jgit.transport.TransportAmazonS3.bucket:Ljava/lang/String;
aload 0
ldc "pack"
invokevirtual org.eclipse.jgit.transport.TransportAmazonS3$DatabaseS3.resolveKey:(Ljava/lang/String;)Ljava/lang/String;
invokevirtual org.eclipse.jgit.transport.AmazonS3.list:(Ljava/lang/String;Ljava/lang/String;)Ljava/util/List;
invokevirtual java.util.HashSet.addAll:(Ljava/util/Collection;)Z
pop
2: new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 2
start local 2 3: aload 1
invokevirtual java.util.HashSet.iterator:()Ljava/util/Iterator;
astore 4
goto 10
StackMap locals: org.eclipse.jgit.transport.TransportAmazonS3$DatabaseS3 java.util.HashSet java.util.Collection top java.util.Iterator
StackMap stack:
4: aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.String
astore 3
start local 3 5: aload 3
ldc "pack-"
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 10
aload 3
ldc ".pack"
invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
ifne 7
6: goto 10
7: StackMap locals: org.eclipse.jgit.transport.TransportAmazonS3$DatabaseS3 java.util.HashSet java.util.Collection java.lang.String java.util.Iterator
StackMap stack:
new java.lang.StringBuilder
dup
aload 3
iconst_0
aload 3
invokevirtual java.lang.String.length:()I
iconst_5
isub
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc ".idx"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 5
start local 5 8: aload 1
aload 5
invokevirtual java.util.HashSet.contains:(Ljava/lang/Object;)Z
ifeq 10
9: aload 2
aload 3
invokeinterface java.util.Collection.add:(Ljava/lang/Object;)Z
pop
end local 5 end local 3 10: StackMap locals: org.eclipse.jgit.transport.TransportAmazonS3$DatabaseS3 java.util.HashSet java.util.Collection top java.util.Iterator
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 4
11: aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lorg/eclipse/jgit/transport/TransportAmazonS3$DatabaseS3;
1 12 1 have Ljava/util/HashSet<Ljava/lang/String;>;
3 12 2 packs Ljava/util/Collection<Ljava/lang/String;>;
5 10 3 n Ljava/lang/String;
8 10 5 in Ljava/lang/String;
Exceptions:
throws java.io.IOException
Signature: ()Ljava/util/Collection<Ljava/lang/String;>;
org.eclipse.jgit.transport.WalkRemoteObjectDatabase$FileStream open(java.lang.String);
descriptor: (Ljava/lang/String;)Lorg/eclipse/jgit/transport/WalkRemoteObjectDatabase$FileStream;
flags: (0x0000)
Code:
stack=5, locals=6, args_size=2
start local 0 start local 1 0: aload 0
getfield org.eclipse.jgit.transport.TransportAmazonS3$DatabaseS3.this$0:Lorg/eclipse/jgit/transport/TransportAmazonS3;
getfield org.eclipse.jgit.transport.TransportAmazonS3.s3:Lorg/eclipse/jgit/transport/AmazonS3;
aload 0
getfield org.eclipse.jgit.transport.TransportAmazonS3$DatabaseS3.this$0:Lorg/eclipse/jgit/transport/TransportAmazonS3;
getfield org.eclipse.jgit.transport.TransportAmazonS3.bucket:Ljava/lang/String;
aload 0
aload 1
invokevirtual org.eclipse.jgit.transport.TransportAmazonS3$DatabaseS3.resolveKey:(Ljava/lang/String;)Ljava/lang/String;
invokevirtual org.eclipse.jgit.transport.AmazonS3.get:(Ljava/lang/String;Ljava/lang/String;)Ljava/net/URLConnection;
astore 2
start local 2 1: aload 2
invokevirtual java.net.URLConnection.getInputStream:()Ljava/io/InputStream;
astore 3
start local 3 2: aload 0
getfield org.eclipse.jgit.transport.TransportAmazonS3$DatabaseS3.this$0:Lorg/eclipse/jgit/transport/TransportAmazonS3;
getfield org.eclipse.jgit.transport.TransportAmazonS3.s3:Lorg/eclipse/jgit/transport/AmazonS3;
aload 2
invokevirtual org.eclipse.jgit.transport.AmazonS3.decrypt:(Ljava/net/URLConnection;)Ljava/io/InputStream;
astore 4
start local 4 3: aload 2
invokevirtual java.net.URLConnection.getContentLength:()I
istore 5
start local 5 4: new org.eclipse.jgit.transport.WalkRemoteObjectDatabase$FileStream
dup
aload 4
aload 3
aload 4
if_acmpne 5
iload 5
goto 6
StackMap locals: org.eclipse.jgit.transport.TransportAmazonS3$DatabaseS3 java.lang.String java.net.URLConnection java.io.InputStream java.io.InputStream int
StackMap stack: new 4 new 4 java.io.InputStream
5: iconst_m1
StackMap locals: org.eclipse.jgit.transport.TransportAmazonS3$DatabaseS3 java.lang.String java.net.URLConnection java.io.InputStream java.io.InputStream int
StackMap stack: new 4 new 4 java.io.InputStream int
6: i2l
invokespecial org.eclipse.jgit.transport.WalkRemoteObjectDatabase$FileStream.<init>:(Ljava/io/InputStream;J)V
areturn
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/eclipse/jgit/transport/TransportAmazonS3$DatabaseS3;
0 7 1 path Ljava/lang/String;
1 7 2 c Ljava/net/URLConnection;
2 7 3 raw Ljava/io/InputStream;
3 7 4 in Ljava/io/InputStream;
4 7 5 len I
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
path
void deleteFile(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0000)
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.eclipse.jgit.transport.TransportAmazonS3$DatabaseS3.this$0:Lorg/eclipse/jgit/transport/TransportAmazonS3;
getfield org.eclipse.jgit.transport.TransportAmazonS3.s3:Lorg/eclipse/jgit/transport/AmazonS3;
aload 0
getfield org.eclipse.jgit.transport.TransportAmazonS3$DatabaseS3.this$0:Lorg/eclipse/jgit/transport/TransportAmazonS3;
getfield org.eclipse.jgit.transport.TransportAmazonS3.bucket:Ljava/lang/String;
aload 0
aload 1
invokevirtual org.eclipse.jgit.transport.TransportAmazonS3$DatabaseS3.resolveKey:(Ljava/lang/String;)Ljava/lang/String;
invokevirtual org.eclipse.jgit.transport.AmazonS3.delete:(Ljava/lang/String;Ljava/lang/String;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/eclipse/jgit/transport/TransportAmazonS3$DatabaseS3;
0 2 1 path Ljava/lang/String;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
path
java.io.OutputStream writeFile(java.lang.String, org.eclipse.jgit.lib.ProgressMonitor, java.lang.String);
descriptor: (Ljava/lang/String;Lorg/eclipse/jgit/lib/ProgressMonitor;Ljava/lang/String;)Ljava/io/OutputStream;
flags: (0x0000)
Code:
stack=5, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield org.eclipse.jgit.transport.TransportAmazonS3$DatabaseS3.this$0:Lorg/eclipse/jgit/transport/TransportAmazonS3;
getfield org.eclipse.jgit.transport.TransportAmazonS3.s3:Lorg/eclipse/jgit/transport/AmazonS3;
aload 0
getfield org.eclipse.jgit.transport.TransportAmazonS3$DatabaseS3.this$0:Lorg/eclipse/jgit/transport/TransportAmazonS3;
getfield org.eclipse.jgit.transport.TransportAmazonS3.bucket:Ljava/lang/String;
aload 0
aload 1
invokevirtual org.eclipse.jgit.transport.TransportAmazonS3$DatabaseS3.resolveKey:(Ljava/lang/String;)Ljava/lang/String;
aload 2
aload 3
invokevirtual org.eclipse.jgit.transport.AmazonS3.beginPut:(Ljava/lang/String;Ljava/lang/String;Lorg/eclipse/jgit/lib/ProgressMonitor;Ljava/lang/String;)Ljava/io/OutputStream;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/eclipse/jgit/transport/TransportAmazonS3$DatabaseS3;
0 1 1 path Ljava/lang/String;
0 1 2 monitor Lorg/eclipse/jgit/lib/ProgressMonitor;
0 1 3 monitorTask Ljava/lang/String;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
path final
monitor final
monitorTask final
void writeFile(java.lang.String, byte[]);
descriptor: (Ljava/lang/String;[B)V
flags: (0x0000)
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.eclipse.jgit.transport.TransportAmazonS3$DatabaseS3.this$0:Lorg/eclipse/jgit/transport/TransportAmazonS3;
getfield org.eclipse.jgit.transport.TransportAmazonS3.s3:Lorg/eclipse/jgit/transport/AmazonS3;
aload 0
getfield org.eclipse.jgit.transport.TransportAmazonS3$DatabaseS3.this$0:Lorg/eclipse/jgit/transport/TransportAmazonS3;
getfield org.eclipse.jgit.transport.TransportAmazonS3.bucket:Ljava/lang/String;
aload 0
aload 1
invokevirtual org.eclipse.jgit.transport.TransportAmazonS3$DatabaseS3.resolveKey:(Ljava/lang/String;)Ljava/lang/String;
aload 2
invokevirtual org.eclipse.jgit.transport.AmazonS3.put:(Ljava/lang/String;Ljava/lang/String;[B)V
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/eclipse/jgit/transport/TransportAmazonS3$DatabaseS3;
0 2 1 path Ljava/lang/String;
0 2 2 data [B
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
path
data
java.util.Map<java.lang.String, org.eclipse.jgit.lib.Ref> readAdvertisedRefs();
descriptor: ()Ljava/util/Map;
flags: (0x0000)
Code:
stack=3, locals=2, args_size=1
start local 0 0: new java.util.TreeMap
dup
invokespecial java.util.TreeMap.<init>:()V
astore 1
start local 1 1: aload 0
aload 1
invokevirtual org.eclipse.jgit.transport.TransportAmazonS3$DatabaseS3.readPackedRefs:(Ljava/util/Map;)V
2: aload 0
aload 1
invokevirtual org.eclipse.jgit.transport.TransportAmazonS3$DatabaseS3.readLooseRefs:(Ljava/util/TreeMap;)V
3: aload 0
aload 1
ldc "HEAD"
invokevirtual org.eclipse.jgit.transport.TransportAmazonS3$DatabaseS3.readRef:(Ljava/util/TreeMap;Ljava/lang/String;)Lorg/eclipse/jgit/lib/Ref;
pop
4: aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/eclipse/jgit/transport/TransportAmazonS3$DatabaseS3;
1 5 1 avail Ljava/util/TreeMap<Ljava/lang/String;Lorg/eclipse/jgit/lib/Ref;>;
Exceptions:
throws org.eclipse.jgit.errors.TransportException
Signature: ()Ljava/util/Map<Ljava/lang/String;Lorg/eclipse/jgit/lib/Ref;>;
private void readLooseRefs(java.util.TreeMap<java.lang.String, org.eclipse.jgit.lib.Ref>);
descriptor: (Ljava/util/TreeMap;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=4, args_size=2
start local 0 start local 1 0: aload 0
getfield org.eclipse.jgit.transport.TransportAmazonS3$DatabaseS3.this$0:Lorg/eclipse/jgit/transport/TransportAmazonS3;
getfield org.eclipse.jgit.transport.TransportAmazonS3.s3:Lorg/eclipse/jgit/transport/AmazonS3;
aload 0
getfield org.eclipse.jgit.transport.TransportAmazonS3$DatabaseS3.this$0:Lorg/eclipse/jgit/transport/TransportAmazonS3;
getfield org.eclipse.jgit.transport.TransportAmazonS3.bucket:Ljava/lang/String;
aload 0
ldc "../refs"
invokevirtual org.eclipse.jgit.transport.TransportAmazonS3$DatabaseS3.resolveKey:(Ljava/lang/String;)Ljava/lang/String;
invokevirtual org.eclipse.jgit.transport.AmazonS3.list:(Ljava/lang/String;Ljava/lang/String;)Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 3
goto 3
StackMap locals: org.eclipse.jgit.transport.TransportAmazonS3$DatabaseS3 java.util.TreeMap top java.util.Iterator
StackMap stack:
1: aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.String
astore 2
start local 2 2: aload 0
aload 1
new java.lang.StringBuilder
dup
ldc "refs/"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual org.eclipse.jgit.transport.TransportAmazonS3$DatabaseS3.readRef:(Ljava/util/TreeMap;Ljava/lang/String;)Lorg/eclipse/jgit/lib/Ref;
pop
end local 2 3: StackMap locals:
StackMap stack:
aload 3
invokeinterface java.util.Iterator.hasNext:()Z
ifne 1
4: goto 7
StackMap locals: org.eclipse.jgit.transport.TransportAmazonS3$DatabaseS3 java.util.TreeMap
StackMap stack: java.io.IOException
5: astore 2
start local 2 6: new org.eclipse.jgit.errors.TransportException
dup
aload 0
invokevirtual org.eclipse.jgit.transport.TransportAmazonS3$DatabaseS3.getURI:()Lorg/eclipse/jgit/transport/URIish;
invokestatic org.eclipse.jgit.internal.JGitText.get:()Lorg/eclipse/jgit/internal/JGitText;
getfield org.eclipse.jgit.internal.JGitText.cannotListRefs:Ljava/lang/String;
aload 2
invokespecial org.eclipse.jgit.errors.TransportException.<init>:(Lorg/eclipse/jgit/transport/URIish;Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 2 7: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/eclipse/jgit/transport/TransportAmazonS3$DatabaseS3;
0 8 1 avail Ljava/util/TreeMap<Ljava/lang/String;Lorg/eclipse/jgit/lib/Ref;>;
2 3 2 n Ljava/lang/String;
6 7 2 e Ljava/io/IOException;
Exception table:
from to target type
0 4 5 Class java.io.IOException
Exceptions:
throws org.eclipse.jgit.errors.TransportException
Signature: (Ljava/util/TreeMap<Ljava/lang/String;Lorg/eclipse/jgit/lib/Ref;>;)V
MethodParameters:
Name Flags
avail
private org.eclipse.jgit.lib.Ref readRef(java.util.TreeMap<java.lang.String, org.eclipse.jgit.lib.Ref>, java.lang.String);
descriptor: (Ljava/util/TreeMap;Ljava/lang/String;)Lorg/eclipse/jgit/lib/Ref;
flags: (0x0002) ACC_PRIVATE
Code:
stack=8, locals=8, args_size=3
start local 0 start local 1 start local 2 0: new java.lang.StringBuilder
dup
ldc "../"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 4
start local 4 1: aconst_null
astore 5
aconst_null
astore 6
2: aload 0
aload 4
invokevirtual org.eclipse.jgit.transport.TransportAmazonS3$DatabaseS3.openReader:(Ljava/lang/String;)Ljava/io/BufferedReader;
astore 7
start local 7 3: aload 7
invokevirtual java.io.BufferedReader.readLine:()Ljava/lang/String;
astore 3
start local 3 4: aload 7
ifnull 18
aload 7
invokevirtual java.io.BufferedReader.close:()V
goto 18
end local 3 StackMap locals: org.eclipse.jgit.transport.TransportAmazonS3$DatabaseS3 java.util.TreeMap java.lang.String top java.lang.String java.lang.Throwable java.lang.Throwable java.io.BufferedReader
StackMap stack: java.lang.Throwable
5: astore 5
aload 7
ifnull 6
aload 7
invokevirtual java.io.BufferedReader.close:()V
end local 7 StackMap locals:
StackMap stack:
6: aload 5
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
7: astore 6
aload 5
ifnonnull 8
aload 6
astore 5
goto 9
StackMap locals:
StackMap stack:
8: aload 5
aload 6
if_acmpeq 9
aload 5
aload 6
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
9: aload 5
athrow
10: StackMap locals: org.eclipse.jgit.transport.TransportAmazonS3$DatabaseS3 java.util.TreeMap java.lang.String top java.lang.String
StackMap stack: java.io.FileNotFoundException
pop
11: aconst_null
areturn
12: StackMap locals:
StackMap stack: java.io.IOException
astore 5
start local 5 13: new org.eclipse.jgit.errors.TransportException
dup
aload 0
invokevirtual org.eclipse.jgit.transport.TransportAmazonS3$DatabaseS3.getURI:()Lorg/eclipse/jgit/transport/URIish;
14: invokestatic org.eclipse.jgit.internal.JGitText.get:()Lorg/eclipse/jgit/internal/JGitText;
getfield org.eclipse.jgit.internal.JGitText.transportExceptionReadRef:Ljava/lang/String;
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 4
aastore
15: invokestatic java.text.MessageFormat.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
16: aload 5
17: invokespecial org.eclipse.jgit.errors.TransportException.<init>:(Lorg/eclipse/jgit/transport/URIish;Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 5 start local 3 18: StackMap locals: org.eclipse.jgit.transport.TransportAmazonS3$DatabaseS3 java.util.TreeMap java.lang.String java.lang.String java.lang.String
StackMap stack:
aload 3
ifnonnull 20
19: new org.eclipse.jgit.errors.TransportException
dup
aload 0
invokevirtual org.eclipse.jgit.transport.TransportAmazonS3$DatabaseS3.getURI:()Lorg/eclipse/jgit/transport/URIish;
invokestatic org.eclipse.jgit.internal.JGitText.get:()Lorg/eclipse/jgit/internal/JGitText;
getfield org.eclipse.jgit.internal.JGitText.transportExceptionEmptyRef:Ljava/lang/String;
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 2
aastore
invokestatic java.text.MessageFormat.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokespecial org.eclipse.jgit.errors.TransportException.<init>:(Lorg/eclipse/jgit/transport/URIish;Ljava/lang/String;)V
athrow
20: StackMap locals:
StackMap stack:
aload 3
ldc "ref: "
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 30
21: aload 3
ldc "ref: "
invokevirtual java.lang.String.length:()I
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
astore 5
start local 5 22: aload 1
aload 5
invokevirtual java.util.TreeMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.eclipse.jgit.lib.Ref
astore 6
start local 6 23: aload 6
ifnonnull 25
24: aload 0
aload 1
aload 5
invokevirtual org.eclipse.jgit.transport.TransportAmazonS3$DatabaseS3.readRef:(Ljava/util/TreeMap;Ljava/lang/String;)Lorg/eclipse/jgit/lib/Ref;
astore 6
25: StackMap locals: java.lang.String org.eclipse.jgit.lib.Ref
StackMap stack:
aload 6
ifnonnull 27
26: new org.eclipse.jgit.lib.ObjectIdRef$Unpeeled
dup
getstatic org.eclipse.jgit.lib.Ref$Storage.NEW:Lorg/eclipse/jgit/lib/Ref$Storage;
aload 5
aconst_null
invokespecial org.eclipse.jgit.lib.ObjectIdRef$Unpeeled.<init>:(Lorg/eclipse/jgit/lib/Ref$Storage;Ljava/lang/String;Lorg/eclipse/jgit/lib/ObjectId;)V
astore 6
27: StackMap locals:
StackMap stack:
new org.eclipse.jgit.lib.SymbolicRef
dup
aload 2
aload 6
invokespecial org.eclipse.jgit.lib.SymbolicRef.<init>:(Ljava/lang/String;Lorg/eclipse/jgit/lib/Ref;)V
astore 6
28: aload 1
aload 6
invokeinterface org.eclipse.jgit.lib.Ref.getName:()Ljava/lang/String;
aload 6
invokevirtual java.util.TreeMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
29: aload 6
areturn
end local 6 end local 5 30: StackMap locals:
StackMap stack:
aload 3
invokestatic org.eclipse.jgit.lib.ObjectId.isId:(Ljava/lang/String;)Z
ifeq 36
31: new org.eclipse.jgit.lib.ObjectIdRef$Unpeeled
dup
aload 0
aload 1
aload 2
invokevirtual java.util.TreeMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.eclipse.jgit.lib.Ref
invokevirtual org.eclipse.jgit.transport.TransportAmazonS3$DatabaseS3.loose:(Lorg/eclipse/jgit/lib/Ref;)Lorg/eclipse/jgit/lib/Ref$Storage;
32: aload 2
aload 3
invokestatic org.eclipse.jgit.lib.ObjectId.fromString:(Ljava/lang/String;)Lorg/eclipse/jgit/lib/ObjectId;
33: invokespecial org.eclipse.jgit.lib.ObjectIdRef$Unpeeled.<init>:(Lorg/eclipse/jgit/lib/Ref$Storage;Ljava/lang/String;Lorg/eclipse/jgit/lib/ObjectId;)V
astore 5
start local 5 34: aload 1
aload 5
invokeinterface org.eclipse.jgit.lib.Ref.getName:()Ljava/lang/String;
aload 5
invokevirtual java.util.TreeMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
35: aload 5
areturn
end local 5 36: StackMap locals:
StackMap stack:
new org.eclipse.jgit.errors.TransportException
dup
aload 0
invokevirtual org.eclipse.jgit.transport.TransportAmazonS3$DatabaseS3.getURI:()Lorg/eclipse/jgit/transport/URIish;
invokestatic org.eclipse.jgit.internal.JGitText.get:()Lorg/eclipse/jgit/internal/JGitText;
getfield org.eclipse.jgit.internal.JGitText.transportExceptionBadRef:Ljava/lang/String;
iconst_2
anewarray java.lang.Object
dup
iconst_0
aload 2
aastore
dup
iconst_1
aload 3
aastore
invokestatic java.text.MessageFormat.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokespecial org.eclipse.jgit.errors.TransportException.<init>:(Lorg/eclipse/jgit/transport/URIish;Ljava/lang/String;)V
athrow
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 37 0 this Lorg/eclipse/jgit/transport/TransportAmazonS3$DatabaseS3;
0 37 1 avail Ljava/util/TreeMap<Ljava/lang/String;Lorg/eclipse/jgit/lib/Ref;>;
0 37 2 rn Ljava/lang/String;
4 5 3 s Ljava/lang/String;
18 37 3 s Ljava/lang/String;
1 37 4 ref Ljava/lang/String;
3 6 7 br Ljava/io/BufferedReader;
13 18 5 err Ljava/io/IOException;
22 30 5 target Ljava/lang/String;
23 30 6 r Lorg/eclipse/jgit/lib/Ref;
34 36 5 r Lorg/eclipse/jgit/lib/Ref;
Exception table:
from to target type
3 4 5 any
2 7 7 any
1 10 10 Class java.io.FileNotFoundException
1 10 12 Class java.io.IOException
Exceptions:
throws org.eclipse.jgit.errors.TransportException
Signature: (Ljava/util/TreeMap<Ljava/lang/String;Lorg/eclipse/jgit/lib/Ref;>;Ljava/lang/String;)Lorg/eclipse/jgit/lib/Ref;
MethodParameters:
Name Flags
avail
rn
private org.eclipse.jgit.lib.Ref$Storage loose(org.eclipse.jgit.lib.Ref);
descriptor: (Lorg/eclipse/jgit/lib/Ref;)Lorg/eclipse/jgit/lib/Ref$Storage;
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
ifnull 2
aload 1
invokeinterface org.eclipse.jgit.lib.Ref.getStorage:()Lorg/eclipse/jgit/lib/Ref$Storage;
getstatic org.eclipse.jgit.lib.Ref$Storage.PACKED:Lorg/eclipse/jgit/lib/Ref$Storage;
if_acmpne 2
1: getstatic org.eclipse.jgit.lib.Ref$Storage.LOOSE_PACKED:Lorg/eclipse/jgit/lib/Ref$Storage;
areturn
2: StackMap locals:
StackMap stack:
getstatic org.eclipse.jgit.lib.Ref$Storage.LOOSE:Lorg/eclipse/jgit/lib/Ref$Storage;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/eclipse/jgit/transport/TransportAmazonS3$DatabaseS3;
0 3 1 r Lorg/eclipse/jgit/lib/Ref;
MethodParameters:
Name Flags
r
void close();
descriptor: ()V
flags: (0x0000)
Code:
stack=0, locals=1, args_size=1
start local 0 0: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/eclipse/jgit/transport/TransportAmazonS3$DatabaseS3;
}
SourceFile: "TransportAmazonS3.java"
NestHost: org.eclipse.jgit.transport.TransportAmazonS3
InnerClasses:
public Unpeeled = org.eclipse.jgit.lib.ObjectIdRef$Unpeeled of org.eclipse.jgit.lib.ObjectIdRef
public final Storage = org.eclipse.jgit.lib.Ref$Storage of org.eclipse.jgit.lib.Ref
DatabaseS3 = org.eclipse.jgit.transport.TransportAmazonS3$DatabaseS3 of org.eclipse.jgit.transport.TransportAmazonS3
final FileStream = org.eclipse.jgit.transport.WalkRemoteObjectDatabase$FileStream of org.eclipse.jgit.transport.WalkRemoteObjectDatabase